Skip to content

Commit

Permalink
Add readmes
Browse files Browse the repository at this point in the history
  • Loading branch information
artyom-razinov committed May 29, 2019
1 parent 05d04aa commit 200ba62
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 3 deletions.
35 changes: 35 additions & 0 deletions Demo/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
## Oversimplified Demo

This is not how we use Mixbox in Avito. This is a concept of how it can be used.

You can just link something in your app and something in your tests:

```
target 'MyApp' do
pod 'MixboxInAppServices', '0.2.2'
end
target 'MyUITests' do
pod 'MixboxXcuiDriver', '0.2.2'
end
```

In Avito we specify version of every intermediate third-party library, specify name of every Mixbox library. That allows us to fetch Mixbox from different sources (which helps with developing Mixbox), fetch specific verisons of libraries. Podfile looks like this:

```
def ui_tests_and_app_common_pods
mixbox_pod 'MixboxIpc'
mixbox_pod 'MixboxIpcCommon'
mixbox_pod 'MixboxUiKit'
mixbox_pod 'MixboxBuiltinIpc'
mixbox_pod 'MixboxFoundation'
mixbox_pod 'MixboxArtifacts'
...
```

This repository contains [tests project](../Tests) that uses the latter approach. You can use it as an example of how to use certain features.

## How to use

* pod install
* cmd+U
16 changes: 13 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

Powerful E2E UI testing framework for iOS.

Currently it is used in Avito, where we have 900+ UI tests, 95% of them are green, 5% of them are run on PR and we are working towards executing 100% of tests on pull request. We are running those tests on 3 platforms and it takes 1 hour (total duration of tests is 40+ hours), because we are using [Emcee](https://github.com/avito-tech/Emcee), a test runner that runs tests on multiple machines.
Currently it is used in Avito, where we have 900+ UI tests, 95% of them are green, 25% of them we run on PR and we are working towards executing 100% of tests on pull request. We are running those tests on 3 platforms and it takes 1.5 hours (total duration of tests is 55+ hours), because we are using [Emcee](https://github.com/avito-tech/Emcee), a test runner that runs tests on multiple machines (note that Mixbox doesn't reuquired Emcee).

If you are enthusiastic about using it in your company, file us an issue. We are making it to be usable by community, however, it is not our main focus now. Our main focus is on making 100% stable suite.

Expand Down Expand Up @@ -38,10 +38,20 @@ Coming soon (is not open sourced yet):
- Reports (including Allure, an open sourced reporting system with web UI)
- Switching accessibility values between release and test builds

## Intallation

There are two ways to use Mixbox.

First is described in [Demo](Demo), it is oversimplified, basically you just use `pod SomePod`.

The second we use in Avito and it looks like this: [Tests](Tests) (see Podfile there).

There are not enough docs yet, so you can try simple approach of linking Mixbox ([Demo](Demo)), but use code examples from [Tests](Tests).

## Supported iOS/Xcode/Swift versions

- Xcode 10.1, Xcode 10.2
- Swift 4.1, Swift 4.2
- Xcode 10.0, 10.1, 10.2.1
- Swift 4.0+
- iOS 9.3.2, iOS 10.3, iOS 11.3, iOS 11.4, iOS 12.0, intermediate versions may work or may not, the mentioned versions are tested on CI

## Known issues
Expand Down

0 comments on commit 200ba62

Please sign in to comment.