Rest 干燥还是潮湿-在API自动化测试脚本中,哪一个是有效的?

Rest 干燥还是潮湿-在API自动化测试脚本中,哪一个是有效的?,rest,automated-tests,karate,Rest,Automated Tests,Karate,我目前正在编写RESTAPI自动化测试脚本。正如大多数研究文章所建议的那样,我们应该编写DAMP(描述性和有意义的短语)测试,以提高可读性。然而,我觉得在我的测试中有很多重复的代码,为了删除重复的代码,我最终得到了倾向于依赖性测试的“DRY”(不要重复你自己)代码。所以我有点困惑该用哪种方法?如果有人能给我一些建议,我将不胜感激。我的建议是: 尽可能重用文件中的有效负载(JSON或XML) 设置授权标题的登录流应可重复使用 不要将到不同端点的API请求合并到可重用的场景中 即使对于相同的端点,

我目前正在编写RESTAPI自动化测试脚本。正如大多数研究文章所建议的那样,我们应该编写DAMP(描述性和有意义的短语)测试,以提高可读性。然而,我觉得在我的测试中有很多重复的代码,为了删除重复的代码,我最终得到了倾向于依赖性测试的“DRY”(不要重复你自己)代码。所以我有点困惑该用哪种方法?如果有人能给我一些建议,我将不胜感激。

我的建议是:

  • 尽可能重用文件中的有效负载(JSON或XML)
  • 设置
    授权
    标题的登录流应可重复使用
  • 不要将到不同端点的API请求合并到可重用的
    场景中
  • 即使对于相同的端点,对于非常不同的有效载荷(例如边界/误差条件),也为每个端点使用单独的
    场景
  • 使用
    场景大纲
    进行数据驱动测试

另外,请参考此答案,以获得一个关于不应做什么的好例子:

一般规则是保持与测试目标相关的代码处于潮湿状态,其他所有内容保持干燥状态。 为简化规则,与测试目标相关的代码可参考:

  • 直接影响预期结果的行动

  • 直接影响预期结果的数据参数

与测试目标无关的代码可参考:

  • 不直接影响预期结果的行动 (例如:与登录无关的测试授权)

  • 不直接影响预期结果的配置数据和数据参数 (示例:与授权无关的测试的基本URL、登录名和密码)