Comments (3)
I think the first step would be to start a WIP PR to add a few non-app hosted tests and a script to run them via xcodebuild
(or however you typically run them). We can then start experimenting with calling xctest
directly without needing to call xcodebuild
.
from bluepill.
I think this is a good idea and am fully supportive of doing it. I'm not sure how exactly we'd plug it in though... the existing architecture is sort of tied to running simulators. Are there any details of how the non-app hosted tests are run? Is it through the xctest
binary? One idea would be to have a different mode for bp
that executes the xctest
binary directly and outputs the test result fragment that the bluepill
binary knows how to merge.
from bluepill.
Are there any details of how the non-app hosted tests are run? Is it through the xctest binary?
The best explanation I've gotten on how these tests are run is through the fbidb documentation.
Logic tests are typically injected into a small host process like the xctest commandline. macOS has a xctest commandline at /usr/bin/xctest/, the iOS Simulator xctest executable is located at $DEVELOPER_DIR/Platforms/iPhoneSimulator.platform/Developer/Library/Xcode/Agents/xctest.
The xctest commandline will load the xctest bundle provided as an argument and run tests according to the arguments, or from an XCTestConfigurationFilePath provided as an environment variable passed to the process.
However they are saying they bypass xcodebuild. We use xcodebuild our implementation and we still get a simulator to boot however it never FULLY boots (never hits the home screen) before the tests finish and it sends back a test passed signal. This is something I think that needs exploring how xcodebuild exactly runs non-app hosted logic tests.
from bluepill.
Related Issues (20)
- Xcode 13.1 Support
- [Reporting bug] Tests that passed on retry are not being reported accurately HOT 4
- Add GitHub CODEOWNERS
- Bluepill reporting issue HOT 2
- Shutting down simulator failed: Unable to shutdown device in current state: Shutdown
- Proposal to remove unsafe-skip-xcode-version-check HOT 2
- In bazel when having a test_host that ends with -App it will remove part of the name.
- Homebrew version of bluepill is out of date HOT 3
- Xcode 13.2.1 CRASH with "App crashed before tests started" HOT 1
- bluepill still getting the defualt path for xcode using xcode-path HOT 1
- Any plan for Xcode 13.4? HOT 2
- Need bluepill support for XCode13.4.1 HOT 8
- Timestamp in Junit xml in GMT format issue. HOT 1
- (BLUEPILL) Failed to read data for UIABCTests - ERROR: Failed to load some test bundles HOT 20
- `bundleIdentifier != nil` runtime crash HOT 3
- Xcode 14.0.1 NSInvalidArgumentException error
- Gather attachments from test run HOT 3
- Don't run disabled tests HOT 2
- Is there a plan to add support for XCUITest with real devices?
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from bluepill.