【问题标题】:Trying to make a template test in XCTest尝试在 XCTest 中进行模板测试
【发布时间】:2017-01-16 07:12:37
【问题描述】:

我正在为我公司的网站编写自动化测试,我现在也在为 iOS 应用编写测试。在我用 javascript 进行的 Jasmine 测试中,我使用 .forEach() 循环来创建测试模板,例如:

[one, two].forEach(function(number){
    it('should print ' + number, function() {
        console.log(number);
    }
});
// Output:
// 'should print one' #=> one
// 'should print two' #=> two

XCTest's 中的 Swift 有什么方法可以做到这一点吗?

【问题讨论】:

    标签: javascript ios swift xctest


    【解决方案1】:

    Swift 有 for-in 循环:

    let inputs = ["abc", "def", "ghi"]
    for input in inputs {
        // do something
        print(input)
        // assert something
        XCTAssertTrue(someFunc(input))
    }
    

    在此处阅读更多信息:https://developer.apple.com/library/content/documentation/Swift/Conceptual/Swift_Programming_Language/ControlFlow.html

    【讨论】:

    • 谢谢。我知道这些循环是可能的,我的问题更多是关于将实际的测试函数放入循环中,因为我宁愿在每个测试中坚持一个断言。
    • 您可以使用输入数组中的输入将打印函数和断言替换为您的测试代码。抱歉,我不小心写了输出而不是输入 - 我已经编辑过了。
    猜你喜欢
    • 1970-01-01
    • 2016-06-26
    • 2014-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-23
    相关资源
    最近更新 更多