Tech Note · 2023-01-20 0

Ui自动化记录

造了两天轮子,积极性大减,需要一个突破口解决我目前的问题。
我设计的思路就是用例和界面分离,后续如果迭代只需要简单维护一下page页,但目前的一个比较大的问题是断言怎么样去加,我以前项目中的接口自动化很直接:传一些参数给接口,返回一串东西,判断想要的东西有没有在返回值里面,断言是方法层只检查http code,用例层检查返回的具体值。而换到ui自动化,让我自己去定加断言的粒度,如果我在页面层做了期望元素有没有出现的判断,那用例层是在检查什么呢?那一旦做了改动要把判断语句和元素都改,这样po模式还有什么意义呢?

还有就是获取一些数据,需要实例化对象,举个例子,一开始你账户里有3个宝石,签到奖励一个宝石,签完到宝石数量应该是4个,这样的一个用例,我该在什么位置去定义一个什么样的对象去存放宝石数量这个属性呢?

另一个比较简单问题的是判断数据,我想要检查界面展示的一大堆东西里有没有我想要的,是要把元素遍历吗?有没有像json list这种数据?
还有一个不确定的地方,我选择的框架是airtest+pytest,之所以选择airtest是用pocoui可以很简单地充当F12里选择器这个角色,而pytest完全是因为之前有用过这个框架,算是舒适区一样。我现在想大致复刻一个以前用过的成熟的框架,这个思路轴不轴? 就拿输出html型的测试报告来说,现在比较流行的是allure,而在之前我一直只接触过pytest-html,我该如何评估哪种更适合我、适合项目?到底该更多选择新技术还是更多选择成熟的技术?