我们在做自动化测试过程中,需要对我们的自动化用例,以及代码进行管理,使其更加结构化,模块化。从而更方便扩展以及维护。好的测试框架,让自动化更加省时省力。
当我们的自动化用例和代码写得多的时候,需要用一种方式来管理。就像我们建房子,当建的房子不是高层的时候,可以用一砖一瓦来建设。当建摩天大厦时,这种方式不牢靠,且效率及其低下。现在建筑业都是用框架式来建设,然后填充,最后装修。
软件工程也是如此。
小杰是一名软件测试工程师。每天的工作就是理解产品需求,写测试用例,以及手工执行测试用例。他希望减少一遍又一遍的重复劳动,于是就自学了web自动化。
第一次写出的用例如下:
他很激动,虽然是一小步,毕竟自动化起来了。他满心欢喜的show给测试老鸟小明看。
小明当场给他浇了一盆冷水。 “你这都不能算自动化测试用例,连个验证点都没有。”
于是在小明的指点下,通过改进,终于完成了一版像那么回事自动化用例。
谁知小明仅仅对小杰的进步表示了赞赏,但仍然对小杰的代码不满意。
“你这像录制的代码。你这写一个用例容易,如果写多个用例,维护起来非常麻烦。你需要一个框架来优化你的代码,我建议你学学page object的思想”。
于是乎,小杰积极捣鼓,优化版也成型了。
cases/login.py
小明对此版本还算满意,表示这里面hard code太多,小杰在小明的帮助下,终于搭建了一款自己还比较满意的框架