TestingMidMCQ
What is `XCTAssert` and what are the main assertion types?
Test your knowledge:
Explanation & Code
Answer:
XCTAssert functions are how you verify expected behaviour in tests. Each checks a different condition and fails the test with a message if the condition isn't met.
Code Example:
// Equality
XCTAssertEqual(result, 42)
XCTAssertNotEqual(result, 0)
// Boolean
XCTAssertTrue(isValid)
XCTAssertFalse(isLoading)
// Nil checks
XCTAssertNil(errorMessage)
XCTAssertNotNil(user)
// Comparable
XCTAssertGreaterThan(score, 0)
XCTAssertLessThanOrEqual(count, 100)
// Throws
XCTAssertThrowsError(try service.fetch()) { error in
XCTAssertEqual(error as? APIError, .unauthorized)
}
XCTAssertNoThrow(try validator.validate(input))
// Always fail (e.g. in a switch default)
XCTFail("Unexpected state reached")
Rate your understanding: