APP 在登录成功之后,下次再进入该 APP 时,一般都已经处于登陆状态;所以判断该 APP 是否已经登录,一般来说,可以通过登录成功后的首页的元素来判断是否登录。
然而,现在面临的情况是:
每次无论是否登录,都会先经过一个导航页(导航页中的元素也包含于登录页中),并且这个导航页出现的时间无法确定。因此比较难通过登录成功后的首页元素来判断。
如果先 Test Login 用例类在 set up class 中判断是否已经登陆,但是已经进入用例中了,unittest 框架的 suite 的特性导致无法再跳过登陆的用例了:
比如,我在 set up class 中获取到了当前已经登陆了(self.is_logged = True),但是在用例前面增加注释@skip_if(is_logged,"当前用户已经登陆,所以跳过登录测试"),这样子这个用例仍然会进行!
现在想到的办法是通过 adb 获取用户的登陆状态(如果可以做到的话?)如果已经登陆,则不把 Test Login 添加到 Test Suite 中,或者各位自动化测试的同学是怎么处理这个情况的呢?