Homework requirement:
a) Read about test automation
a. http://en.wikipedia.org/wiki/Automated_testing#Graphical_User_Interface_.28GUI.29_testing
b) Try some automatic testing tools
a. I strongly recommend this tool: http://sikuli.org/
c) Apply the theory and tool on your project
d) Show your result in a blog, we need to see screen shots, actually testing code, and whether or not such testing automation improves the quality of your project.
1. 底层测试自动化:我们已经完全实现了底层测试的自动化,我们在iLiferInterface下编写了一个tester模拟器,它通过System.Reflection调用iLiferInterface的函数并监控数据结构的变化。它有两个输入,一个是testcase脚本,一个是脚本的标准输出。我们写了一个testcase脚本生成器随机生成脚本和它的标准输出。如下所示
在http://www.cnblogs.com/SE-team-2011/archive/2011/05/08/2040230.html 中我们给出了这个tester的介绍和test结果
2. UI测试自动化:
使用了sikuli X,以下是一个示例:
这是增加了10次新task(但是每次都取消了)。如下是一次操作过程中的截图
3. 关于自动化测试:
底层测试的自动化是我们在测试程序内部逻辑的主要方法,并且有着非常好的效果。我们还没有开始做UI的测试,希望UI测试自动化能够增加测试的效率(但是好像siluli有不少bug...)