代码开发Prompts提示词合集-GPT3.5

文章讨论了单元测试的重要准则,如独立性、边界条件覆盖和可读性,提供了Junit5和Mockito的使用示例。同时,提到了代码生成中可选用的ApacheCommonsLang和Guava工具类,强调了遵循KISS、DRY等编程原则的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 单元测试

1.1 Prompt

为下面的<原代码>生成单元测试,你可选的技术为Junit5, Mockito.
你编写代码时遵循以下准则:“”"
1.清晰明确的目标:每个单元测试应该有明确的目标,测试一个特定的功能或代码单元。确保测试的目标清晰,不要试图一次测试太多功能。
2. 独立性:每个单元测试应该是独立的,不依赖于其他测试或外部资源。这样可以确保每个单元测试都可以独立运行和验证代码的正确性。
3. 边界条件覆盖:确保单元测试覆盖各种边界条件和异常情况,包括输入的边界值、边界条件的处理等。这样可以提高代码的健壮性和鲁棒性。
4. 可重复性:每次运行相同的单元测试都应该得到相同的结果,不受环境或其他因素的影响。这可以确保测试结果的可靠性和一致性。
5. 可读性和可维护性:编写清晰、简洁、易于理解的单元测试代码,使其他开发人员能够轻松理解和维护测试代码。
6. 频繁运行:单元测试应该经常运行,最好是在每次代码更改后运行。这样可以及早发现潜在的问题,并迅速定位和修复代码错误。
7. 及时反馈:单元测试应该提供即时反馈,使开发人员能够快速了解测试结果并查找问题。测试结果应该清晰明确,包括测试通过或失败的信息以及失败原因。
8. 维护测试覆盖率:确保单元测试覆盖代码的各个分支和路径,以尽可能涵盖代码的所有情况。通过维护测试覆盖率,可以提高代码质量和可靠性。
“”"
,你可以适当使用@DisplayName, @ParameterizedTest, @Nested 等来使单元测试更准确.
务必要记住,你给的单元测试输入需要考虑多种情况,例如:输入为空,不合法,空串等.
你的代码注释尽量是中文,注意,你无需一定要用到 Mockito,只有在你需要的时候使用就可以。
<原代码所在的类名>: " " ,<原代码>:
“”"

“”",给 " " 方法生成单元测试即可,尽量覆盖每个分支。
先思考分析函数有哪些分支以及边界情况(包含可能的各种非预期的异常情况),一一列出它们。
之后根据你列出的情况再编写代码。

1.2 使用示例

为下面的<原代码>生成单元测试,你可选的技术为Junit5, Mockito.
你编写代码时遵循以下准则:“”"
1.清晰明确的目标:每个单元测试应该有明确的目标,测试一个特定的功能或代码单元。确保测试的目标清晰,不要试图一次测试太多功能。
2. 独立性:每个单元测试应该是独立的,不依赖于其他测试或外部资源。这样可以确保每个单元测试都可以独立运行和验证代码的正确性。
3. 边界条件覆盖:确保单元测试覆盖各种边界条件和异常情况,包括输入的边界值、边界条件的处理等。这样可以提高代码的健壮性和鲁棒性。
4. 可重复性:每次运行相同的单元测试都应该得到相同的结果,不受环境或其他因素的影响。这可以确保测试结果的可靠性和一致性。
5. 可读性和可维护性:编写清晰、简洁、易于理解的单元测试代码,使其他开发人员能够轻松理解和维护测试代码。
6. 频繁运行:单元测试应该经常运行,最好是在每次代码更改后运行。这样可以及早发现潜在的问题,并迅速定位和修复代码错误。
7. 及时反馈:单元测试应该提供即时反馈,使开发人员能够快速了解测试结果并查找问题。测试结果应该清晰明确,包括测试通过或失败的信息以及失败原因。
8. 维护测试覆盖率:确保单元测试覆盖代码的各个分支和路径,以尽可能涵盖代码的所有情况。通过维护测试覆盖率,可以提高代码质量和可靠性。
“”"
,你可以适当使用@DisplayName, @ParameterizedTest, @Nested 等来使单元测试更准确.
务必要记住,你给的单元测试输入需要考虑多种情况,例如:输入为空,不合法,空串等.
你的代码注释尽量是中文,注意,你无需一定要用到 Mockito,只有在你需要的时候使用就可以。
<原代码所在的类名>: " LLMContentUtils “,<原代码>:
“””
/**
* 去除input开头结尾的单引号

* “‘aaa’” -> “aaa”
* " ‘aaa’" -> “aaa”
* “aaa” -> “aaa”
* “aa’a’c’” => “aa’a’c”
* null -> null
* “” -> “”
*
* @param str 输入
* @return 去除单引号的输出
*/
public static String removeQuote(String str) {
if (str == null) {
return null;
}

    return StringUtils.strip(str, "'");
}

“”"

2. 代码生成

2.1 Prompt

你是一个专业的Java开发人员,按照注释,实现下列Java代码
你可以选择的工具类:

“”"

  1. Apache Commons Lang:
  • StringUtils: 字符串操作工具类。
  • ArrayUtils: 数组操作工具类。
  • NumberUtils: 数字操作工具类。
  • DateUtils: 日期操作工具类。
  • SystemUtils: 系统相关信息工具类。
  • ClassUtils: 类相关操作工具类。
  • ObjectUtils: 对象操作工具类。
  • Validate: 验证工具类。
  • RandomStringUtils: 随机字符串生成工具类。
  • ExceptionUtils: 异常处理工具类。
  1. Guava:
  • Preconditions: 前置条件检查工具类。
  • Strings: 字符串操作工具类。
  • Lists: 列表操作工具类。
  • Maps: Map操作工具类。
  • Sets: 集合操作工具类。
  • Files: 文件操作工具类。
  • Iterables: 可迭代对象操作工具类。
  • Ordering: 排序工具类。
  • CharMatcher: 字符匹配工具类。
  • Splitter: 字符串拆分工具类。
    “”"

你可以使用的特性包括Java8-Java17的特性,如:
“”"
• Lambda 表达式、函数式接口、方法引用、Stream API
• Optional
• 新的日期和时间 API (java.time)
• CompletableFuture
• 接口静态方法
“”"

你的代码需要遵循如下准则:

“”"

  1. KISS 原则:保持代码简单,避免复杂化。
  2. DRY 原则:避免重复代码,注重复用。
  3. 开放封闭原则:支持扩展,减少修改。
  4. 组合优于继承:优先使用组合而非多层继承。
  5. 单一职责原则:每个类或模块专注于一个功能。
  6. 关注分离:逻辑、渲染和数据处理相互独立。
  7. 避免过度编码:不为未来可能的需求编写代码。
  8. 注重文档:为代码提供清晰的注释和说明。
  9. 追求可读性:编写清晰、易维护的代码。
    “”"

根据需求使用上述工具类与特性,按规范实现功能,注重代码清晰性与扩展性。

你需要完成开发的代码:
“”"

“”"

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值