测试

🧪 期望与断言

什么是 Test

Test 是一个简单的测试函数,允许您创建包含多个步骤、期望和断言的测试套件。您可以为测试套件指定一个名称,一个 Tester 类的实例用于运行测试,以及一个包含测试步骤的闭包。

Test 可以在哪里使用?

Test 可以在任何地方使用!Test 可以用来在函数内部快速测试,以确保某些内容按预期工作。当您想要测试一个包含多个步骤和断言的复杂代码时,它尤其有用。Test 甚至可以用于您的单元测试!

示例

带有断言的简单测试

try await Test(named: "Test someMethod()") { tester in
    try tester.assert(SomeClass.someMethod())
    try await tester.assertNoThrows(try await SomeClass.someOtherMethod())
    try tester.assert(SomeClass.someBooleanValue, isEqualTo: false)
}

带有期望的测试

try Test(named: "Test someMethod() with expectations") { tester in
    try Expect("First step should succeed") {
        try SomeClass.someMethod()
    }
    
    tester.logInfo("Just finished first step")

    try Expect("Second step should succeed") {
        try SomeClass.someOtherMethod()
    }
            
    tester.logWarning("Something unexpected happened during the second step")

    try Expect("Final assertion should be true") {
        try tester.assert(SomeClass.someBooleanValue)
    }
    
    tester.logSuccess("All steps and assertions passed!")
}