• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

ios - 用于 ios 自动化测试的 KIF - 如何知道测试的顺序

[复制链接]
菜鸟教程小白 发表于 2022-12-12 16:14:06 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题

KIF 测试按字母顺序执行,但如果我有多个文件怎么办?我想按顺序运行所有自动化测试,可以吗?

在单个文件中也是如此:

  - (void)testB {} will be the second test

- (void)testA {} will be the first test

- (void)testC {} will be the third test

但是,假设我有 MainScreenTest.m,然后是 SecondScreenTest.m,然后是 ThirdScreenTest.m,我运行整个测试套件。我怎么知道哪个会先运行?我试过只运行一个文件,但可以同时运行多个文件吗?



Best Answer-推荐答案


KIF 也会按字母顺序运行文件本身。所以它会是这样的:

TestFileA
 -(void)testA
 -(void)testE
 -(void)testR
TestFileB
 -(void)testB
 -(void)testC
 -(void)testE

等等

您并没有问这个问题,只是以防万一您需要知道:所有测试都应该是独立的,这样测试的运行顺序就无关紧要了。这就是它们按字母顺序运行的原因。因此,例如,每个测试都应该返回到它开始时所在的屏幕,以便下一个测试可以从该屏幕运行。

在我的一个项目中,有一个登录,然后还有标签栏。我就是这样设置的(这是sudo代码,请不要复制粘贴):

TestA
 -(void)beforeAll{login, & tapTabBarA} <- This happens once
 -(void)beforeEach{ } <- Anything in here would happen before every test
 -(void)afterEach{tapTabBarA} <- This happens after every test
 -(void)afterAll{logout} <- This happens once
 -(void)testSomethingA1
 -(void)testSomethingA2

TestB
 -(void)beforeAll{login, & tapTabBarB}
 -(void)beforeEach{ }
 -(void)afterEach{tapTabBarB}
 -(void)afterAll{logout}
 -(void)testSomethingB1
 -(void)testSomethingB2

这样,如果 testSomethingA1 失败,testSomethingA2 将能够运行,因为它是从正确的 View (在本例中为 TabBarA 的 Root View )开始的。同样,如果 TestA 失败,TestB 仍然会运行,因为即使失败,第二次运行也会从正确的位置开始(在这种情况下是登录 View Controller )。希望这会有所帮助!

关于ios - 用于 ios 自动化测试的 KIF - 如何知道测试的顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32409059/

回复

使用道具 举报

懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关注0

粉丝2

帖子830918

发布主题
阅读排行 更多
广告位

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap