gpt4 book ai didi

ios - 为什么像 KIF 这样的功能测试框架中没有条件语句?

转载 作者:行者123 更新时间:2023-11-28 20:15:21 24 4
gpt4 key购买 nike

我是 iOS、xcode、KIF 框架和 Objective C 的新手。我的第一个任务是使用 KIF 编写测试代码。如果 KIF 有条件语句,看起来肯定会容易得多。

基本上是这样的:

if ([tester existsViewWithAccessibilityLabel:@"Login"]) {
[self login];
}
// continue with test in a known state

当您一次运行一项测试时,KIF 会在测试后退出应用程序。如果您一次运行所有测试,它不会在测试之间退出 - 要求测试人员非常非常小心应用程序的状态(这非常耗时且不好玩)。

最佳答案

测试框架通常不会实现 if 条件,因为它们已经以其 native 形式存在。
您可以查看测试框架的源代码,了解它是如何进行“If 状态检查”的。这将教会您如何做您可能想做的大多数事情(即使在功能测试期间做这些事情并不总是一个好主意)。您也可以在这里查看:Can I check if a view exists on the screen with KIF?

此外,您的测试在本质上应该是自信的,遵循以下工作流程:

 given:
the user has X state setup
(here you write code to assertively setup the state)

It is OK and preferred to isolate your tests and setup
the "given" state (e.g. set login name in the model directly without going
through the UI) as long as you have covered that behavior in another test.

When:
The user tries to do X
(here you tap something etc..)

Then:<br>
The system should respond with Z
(here you verify the system did what you need it)

关于ios - 为什么像 KIF 这样的功能测试框架中没有条件语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23790341/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com