<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">Hello Community,<div class=""><br class=""></div><div class="">I’m working on adding iOS platform support for&nbsp;SwiftXCTest. So I’ve have the following proposals and would like to hear feedback from the community.</div><div class=""><ol class=""><li class="">SwiftXCTest runs the tests in a way `XCTMain([ testCase(TestFoo.allTests) ])`. XCTMain supports only Linux / FreeBSD / macOS. So I suggest introducing an API that will provide a similar way of running tests as XCTMain, but in a case using SwiftXCTest as a framework e.g. on iOS. It could be the same logic that just returns exit code, when XCTMain just exits with this code.</li><li class="">The suggestion above (number 1) is good, but too simple for using SwiftXCTest as a framework, since we only have exit code and debug logs. So my second proposal is providing mechanism of initialising root test suite with array of&nbsp;testCases (array of XCTestCaseEntry objects) with the same structure that XCTMain does. This isn’t possible now since&nbsp;XCTestCaseSuite class that is used to initialise root test suite (see XCTMain.swift line 80) is internal.</li><li class="">This proposal is because Swift has very poor reflection at the moment. So I suggest creating a generator (pre-build script) for Swift test cases that for example is able analysing concrete folder with swift files and generate e.g. TestCases.swift file. This script is intended to be used manually.</li></ol></div><div class="">Looking forward to any feedback.</div><div class=""><br class=""></div><div class="">Ilya</div></body></html>