我正在编写一个在UI方面非常复杂的Web应用程序,并且在很大程度上依赖于AJAX,DOM和图像处理.
是否有任何标准做法(我不需要工具)可以遵循以减少错误?
一种非常简单的技术是烟雾测试,您可以自动点击所有应用程序.如果脚本运行且日志中的任何位置都没有错误,则至少有一个已定义的质量级别.
这种技术实际上捕获了大量的回归中断,并且比听起来更有效.我们为此使用硒.
分离逻辑和UI部分 - 在页面后面的代码中没有所有业务逻辑和复杂代码.而是将它们建立在标准层结构(数据层,业务规则/逻辑层,UI层)之外.这将确保您要测试的逻辑代码不会引用表单,而是使用易于单元测试的类.
对于一个非常基本的示例,没有执行此操作的代码:
string str = TextBox1.Text.ToString();
//do whatever your code does
TextBox2.Text = str;
而是使用方法将逻辑提取到单独的类中:
TextBox2.Text = DoWork(TextBox1.Text.ToString());
public class Work
{
public string DoWork(string str)
{
//do work
return str2;
}
}
这样您就可以编写单元测试来验证DoWork是否返回了正确的值:
string return = DoWork("TestThisString");
现在,您的所有逻辑都是可单元测试的,只有代码可以直接在UI层中引用页面.