Jak*_*kub 27 xcode osx-server ios xctest swift
我有一些使用XCTestCase
类编写的测试,我想计算代码覆盖率.对于常规测试,它在我的机器人中很好地显示,但对于UI测试总是0%.
最简单的测试:
import XCTest
class FAQUITests: XCTestCase {
let app = XCUIApplication()
override func setUp() {
super.setUp()
app.launch()
}
func openFaqView() {
app.navigationBars["NavigationBar"].buttons["FAQ"].tap()
}
func testFaq() {
openFaqView()
app.tables.cells.elementBoundByIndex(0).tap()
}
}
Run Code Online (Sandbox Code Playgroud)
这肯定应该显示一些测试覆盖率,但事实并非如此.我启用了我的机器人代码覆盖范围:
结果:
仍为0%.
Xcode 7.2(7C68)
如果您只有 UI 测试目标,就会发生这种情况。添加单元测试目标。然后再次运行测试。这次你将看到代码覆盖率。
如果没有单元测试代码,UITestcase 不会提供覆盖率数据。你可以试试这个。在 Viewcontroller 中有一个按钮,将 IBAction 附加到它。并为其创建 UITestcase。检查使用和不使用 UITestcases 的代码覆盖率。你会看到差异。差异将为您提供 UITestcase 的代码覆盖率。截至目前,Xcode 不单独提供代码覆盖率数据。它取决于单元测试用例。
---用你的代码我已经注释掉了你的
函数 testStepper() {
Run Code Online (Sandbox Code Playgroud)let steppersQuery = app.steppers steppersQuery.buttons["Increment"].tap() steppersQuery.buttons["Decrement"].tap() } func testSegmented() { app.buttons["Second"].tap() app.buttons["Fourth"].tap() app.buttons["Third"].tap() app.buttons["First"].tap() }
现在很明显,UITestcase 添加到单元测试用例中以实现代码覆盖率。
归档时间: |
|
查看次数: |
3220 次 |
最近记录: |