Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Corellium domain layer #1802

Closed
zuziaka opened this issue Apr 13, 2021 · 0 comments · Fixed by #1897
Closed

Corellium domain layer #1802

zuziaka opened this issue Apr 13, 2021 · 0 comments · Fixed by #1897
Assignees

Comments

@zuziaka
Copy link
Contributor

zuziaka commented Apr 13, 2021

Input: shards and corresponding apks structure
Body: Invoking low-level functions for: initializing devices, running tests
Output: log streams

@zuziaka zuziaka mentioned this issue Apr 13, 2021
@zuziaka zuziaka changed the title Main run function Main "test" function Apr 13, 2021
@jan-goral jan-goral changed the title Main "test" function Integrate corellium modules Apr 22, 2021
@jan-goral jan-goral changed the title Integrate corellium modules Corellium modules integration Apr 22, 2021
@jan-goral jan-goral changed the title Corellium modules integration Corellium domain layer Apr 27, 2021
@jan-goral jan-goral self-assigned this May 4, 2021
mergify bot pushed a commit that referenced this issue May 8, 2021
Related to #1802

This is a bunch of several minor changes cherry-picked from #1897 for splitting code review into smaller parts.

* Normalize output lines from Corellium console + unit test
* Convert API interfaces to functional
    * Update adapters implementation to use SAM conversion
* Rename API scope TestApk to Apk and expand the interface to meet domain requirements
* Fix log parser issues
* Add doc for sharding structures
* Add `am instrument` status codes constants

Merging this one will make the #1897 thinner.
mergify bot pushed a commit that referenced this issue May 14, 2021
Related to #1802 

The public API of the domain layer is required for CLI integration.
The rest of the domain layer implementation will be added in another PR.

## Checklist

- [x] Documented
mergify bot pushed a commit that referenced this issue May 14, 2021
Related to #1802 

This is a bunch of several minor changes cherry-picked from #1897 for splitting code review into smaller parts.

* Add missing `build.gradle.kts` for `:corellium:junit` module
* Fix some names
* Organize imports
* Add details parsing to `am instrument log` parser
* Fix method signatures

## Test Plan
> How do we know the code works?

Unit tests pass.
mergify bot pushed a commit that referenced this issue May 18, 2021
Related to #1802 

This is a bunch of several minor changes cherry-picked from #1897 for splitting code review into smaller parts.

* Fix some names
* Add tests for RunTestAndroidCorellium

## Test Plan
> How do we know the code works?

Unit tests pass.
@mergify mergify bot closed this as completed in #1897 May 19, 2021
mergify bot pushed a commit that referenced this issue May 19, 2021
…1897)

Fixes #1802 

This PR adds a domain logic for `RunTestCorelliumAndroid`.

List of features:
* Parsing test cases & other info from apk.
* Creating and/or invoking android instances on demand.
* Advanced sharding.
  * Many apps and tests in one shard.
  * Tests from one app in many shards.
* Dumping shards to file.
* Executing tests
* Generating JUnitReport.xml

What is currently not supported:
* Smart sharding (using test case durations from previous runs).
* Flaky tests.
* Cleaning up devices after tests.
* Some other not listed stuff.

Module [README.md](https://github.com/Flank/flank/blob/corellium-domain/corellium/domain/README.md)

## Test Plan
> How do we know the code works?

Unit tests pass.
`$ flank corellium test android run -c="flank-corellium-android.yml"` is invoking a fully integrated feature.


## Checklist

- [x] Documented
- [x] Unit tested
# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants