您有自动化测试/手动系统测试。
如果它们失败,如果变量值发生变化,例如:
您有一个拥有10个产品的电子商务网站。 在生产中,价格会发生变化,测试人员会知道新价格是多少。
但是你没有在非生产环境中更新价格,但是测试人员说他们的测试失败了,因为他们已经更新了测试中的价格。因为他们在测试中更新了价格。
我的问题归结为如何编写测试。他们应该知道物品的价格,还是应该只知道商业规则并对其进行测试。
如果需要在屏幕上显示价格,那么测试应该以识别这个的方式编写,实际值不应该只是一个例子。 知道数据来自何处以及应该在何处显示数据。
因此,在我看来,如果业务规则/要求发生变化,测试应该只需要改变,而不是数据已经改变了值。
答案 0 :(得分:0)
在这种情况下,不应该进行自动化测试。
它失败的唯一时间是当流程发生变化意味着需要更新方案或存在错误时。
在场景中使用硬编码的此类数据不是一个好习惯。硬编码的唯一数据应该是不会改变的数据,如电子邮件地址,密码,地址,信用卡。
为了避免这样的问题,您应该在将产品添加到购物车之前将产品价格保存在变量中,然后在需要的地方使用该变量。
您应该拥有一套最佳实践来避免任何问题,并提高自动化套件的效率,可维护性和稳定性。 如果需要,请使用代码审查并安排一些时间进行改进。
如果存在多种语言,这些方案应适用于任何产品,实际上适用于该环境的任何语言,是的,只有在业务需求发生变化时,测试才会发生变化。