trainer alternatives and similar libraries
Based on the "Other Testing" category.
Alternatively, view trainer alternatives based on common mentions on social networks and blogs.
PonyDebugger9.5 0.0 L2 trainer VS PonyDebuggerRemote network and data debugging for your native iOS app using Chrome Developer Tools
iOS Snapshot Test CaseSnapshot view unit tests for iOS
SnapshotTesting9.0 7.9 trainer VS SnapshotTesting📸 Delightful Swift snapshot testing.
ios-snapshot-test-case8.7 0.0 L4 trainer VS ios-snapshot-test-caseSnapshot view unit tests for iOS
Fakery8.0 1.3 L5 trainer VS Fakery:alien: Swift fake data generator
Cuckoo7.9 5.8 L3 trainer VS CuckooBoilerplate-free mocking framework for Swift!
Mockingjay7.8 0.0 L4 trainer VS MockingjayAn elegant library for stubbing HTTP requests with ease in Swift
OCMockito7.1 0.0 trainer VS OCMockitoMockito for Objective-C: creation, verification and stubbing of mock objects
Buildasaur6.5 0.0 L3 trainer VS BuildasaurAutomatic testing of your Pull Requests on GitHub and BitBucket using Xcode Server. Keep your team productive and safe. Get up and running in minutes. @buildasaur
DVR6.4 0.0 L5 trainer VS DVRNetwork testing for Swift
Kakapo6.2 0.0 L3 trainer VS Kakapo🐤Dynamically Mock server behaviors and responses in Swift
NaughtyKeyboard5.5 0.0 L5 trainer VS NaughtyKeyboardThe Big List of Naughty Strings is a list of strings which have a high probability of causing issues when used as user-input data. This is a keyboard to help you test your app from your iOS device.
Vinyl4.2 0.0 L4 trainer VS VinylNetwork testing à la VCR in Swift
Cribble3.9 0.0 L5 trainer VS CribbleSwifty tool for visual testing iPhone and iPad apps. Every pixel counts.
Mockingbird3.5 0.0 trainer VS MockingbirdSimplify software testing, by easily mocking any system using HTTP/HTTPS, allowing a team to test and develop against a service that is not complete or is unstable or just to reproduce planned/edge cases.
MirrorDiffKit3.1 0.0 L2 trainer VS MirrorDiffKitGraduation from messy XCTAssertEqual messages.
Mockit3.1 0.0 L4 trainer VS MockitA simple mocking framework for Swift, inspired by the famous http://mockito.org/
second_curtain2.7 0.0 trainer VS second_curtainUpload failing iOS snapshot tests cases to S3
AcceptanceMark1.9 0.0 L4 trainer VS AcceptanceMarkTool for generating Acceptance Tests in Xcode, inspired by Fitnesse
MetovaTestKit1.6 0.0 L4 trainer VS MetovaTestKitA collection of useful test helpers designed to ease the burden of writing tests for iOS applications.
SnappyTestCase0.9 0.0 trainer VS SnappyTestCaseiOS Simulator type agnostic snapshot testing, built on top of the FBSnapshotTestCase.
XCTestExtensions0.9 0.0 trainer VS XCTestExtensionsXCTestExtensions is a Swift extension that provides convenient assertions for writing Unit Test.
TestKit0.6 0.0 L3 trainer VS TestKitThe easiest way to implement full BDD in your Swift iOS projects! Use plain English specs (Gherkin) to drive tests that include both UI automation and interacting with application data & state.
Bugfender Live0.5 2.1 trainer VS Bugfender LiveStream the screen of an iOS device for live debugging.
Fetcher0.3 2.6 trainer VS FetcherMock paging data with a variable fetch time interval.
DataFixture0.3 0.0 trainer VS DataFixtureCreation of data model easily, with no headache.
Parallel iOS Tests0.3 0.0 trainer VS Parallel iOS TestsRun iOS tests on multiple simulators in parallel at the same time
OCMockMock objects for Objective-C.
Appwrite - The Open Source Firebase alternative introduces iOS support
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of trainer or a related project?
This is an alternative approach to generate JUnit files for your CI (e.g. Jenkins) without parsing the
xcodebuild output, but using the Xcode
xcresult files instead.
Some Xcode versions has a known issue around not properly closing
stdout (Radar), so you can't use xcpretty.
trainer is a more robust and faster approach to generate JUnit reports for your CI system.
trainer, the Twitter iOS code base now generates JUnit reports 10 times faster.
|Generate JUnit reports||:white_check_mark:||:white_check_mark:|
|Generate HTML reports||:white_check_mark:||:no_entry_sign:|
|Works when the
|Show test execution duration||:white_check_mark:||:white_check_mark:|
xcpretty is a great piece of software that is used across all fastlane tools.
trainer was built to have the minimum code to generate JUnit reports for your CI system.
More information about the why
trainer is useful can be found on my blog.
Use with fastlane
Update to the latest fastlane and run
fastlane add_plugin trainer
Now add the following to your
lane :test do scan(scheme: "ThemojiUITests", output_types: "", fail_build: false) trainer(output_directory: ".") end
This will generate the JUnit file in the current directory. You can specify any path you want, just make sure to have it clean for every run so that your CI system knows which one to pick.
If you use circle, use the following to automatically publish the JUnit reports
For more information, check out the [fastlane plugin docs](fastlane-plugin-trainer#readme).
Add this to your
Alternatively you can install the gem system-wide using
sudo gem install trainer.
If you use
fastlane, check out the official [fastlane plugin](fastlane-plugin-trainer#readme) on how to use
cd [project] fastlane scan --derived_data_path "output_dir"
Convert the plist or xcresult files to junit
You can also pass a custom directory containing the plist or xcresult files
trainer --path ./something
For more information run
Show the test results right in your pull request
To make it easier for you and your contributors to see the test failures, you can use danger with the danger-junit plugin to automatically post the test failures on the GitHub PR.
After the lobbying of @steipete and the comment
How does Xcode Server parse the results?
I started investigating alternative approaches on how to parse test results.
For more information about the plist files that are being used, check out Michele's blog post.
*Note that all licence references and agreements mentioned in the trainer README section above are relevant to that project's source code only.