Dam*_*dar 6 ios xctest swift xctestcase
在这里,我尝试检查视图控制器的单元测试用例。- 我有一个带有按钮和标签的视图控制器。- 当您单击按钮时,它将调用另一个方法。它将数据提供给按钮操作标签文本更改。
- 我想检查该按钮是否触发了该方法?无需添加函数的任何布尔值或返回类型。
这是我的代码。
class ViewController: UIViewController {
@IBOutlet weak var buttonFetch: UIButton?
@IBOutlet weak var nameLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func fetchUser() {
self.nameLabel.text = self.getUser()
}
func getUser() ->String {
return User.data()
}
}
struct User {
static func data()->String{
return "Apple"
}
}
Run Code Online (Sandbox Code Playgroud)
这是我的测试用例
func testFetchUserAction() {
controller.buttonFetch?.sendActions(for: .touchDown)
// I want to test the method getUser from viewcontroller gets called or not
// some thing like this XCTAssert(self.controller.getUser(),"not called")
XCTAssertEqual(self.controller.nameLabel.text!, "Apple")
}
Run Code Online (Sandbox Code Playgroud)
小智 1
在另一个回复中发现类似的内容,尝试过类似的事情吗?来源:如何在“单元测试”中为按钮添加点击操作并显示警报
func testTappingLoginButton_ShouldPresentAlert() {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let sut = storyboard.instantiateInitialViewController() as! ViewController
sut.loadViewIfNeeded()
let alertVerifier = QCOMockAlertVerifier()
sut.loginButton.sendActions(for: .touchUpInside)
XCTAssertEqual(alertVerifier.presentedCount, 1)
}
Run Code Online (Sandbox Code Playgroud)
让我知道它是否有效!
| 归档时间: |
|
| 查看次数: |
14290 次 |
| 最近记录: |