quality_mobile_apps
quality_mobile_apps copied to clipboard
Tools, articles, etc. related to quality in mobile applications.
Quality in mobile apps
Table of Contents
- Quality in mobile apps
-
Table of Contents
- Legend
-
Accessibility
-
Android
- Tools
- iOS
-
Android
-
Developer settings
- Android
- iOS
-
Debug
- Android
- Multiplatform
-
Reverse engineering
- Android
-
Screen mirroring
- Android
- iOS
-
Emulator/simulator
- Android
- iOS
- Manual testing
-
Visual testing
- Android
- iOS
-
Stress testing
- Android
- iOS
-
Linked
-
Android
- Performance
- Security
-
iOS
- Security
- React Native
-
Flutter
- UI Tests
- All
-
Android
- Books
-
Security
- Android
- iOS
- React Native
- Multiplatform
-
Static analysis
- Android
- iOS
- Multiplatform
-
App state restoring
-
Android
- Fill RAM
-
Android
-
Web Services
- Analytics
- Cloud Testing
- Device Farm
- Crowd Testing
-
Stats
-
CPU
- Android
- iOS
-
RAM
- Android
- iOS
-
Battery
- Android
- iOS
-
Speed
- Android
- iOS
- Monitoring
-
Duration of the method
- Android
- iOS
-
Binary size
- Android
-
Other
- Network Usage
- Time between multiple independent events
-
CPU
-
Backend
- API Chaos
- Endpoint performance
- Health status
-
Network
- Proxy
- Tools
-
Automated checking
-
Unit test
- Android
-
iOS
- Network Stubbing
-
Coverage
- Android
- iOS
- Techniques
-
e2e
- Android
- iOS
- Multiplatform
-
Helpers
- Android
-
iOS
- Network Stubbing
- React Native
- Multiplatfom
-
Pattern
- Robot
-
Other
- Android
-
Unit test
- Android
-
Test farm
- Android
- Other
-
Leaks
- Android
- iOS
-
Publishing
- Android
- Multiplatform
-
Continous Integration
- Android
-
Other
- Android
- React Native
- Flutter
- Contributing
- License
Legend
:moneybag: - Paid services, tools, etc
Accessibility
Android
- Accessibility - docs
- Accessibility Developer Checklist
- Android Accessibility Tutorial: Getting Started
Tools
iOS
- Accessibility - docs
- iOS Accessibility Tutorial: Getting Started
- Google Toolbox for Accessibility for iOS
- UBKAccessibilityKit
- AccessibilitySnapshot
- A11yUITests
Developer settings
Android
- Barstool
- QualityMatters
- Bee
- U+2020
- Under the Hood - Android App Debug View Library
- Debug artist
- Cockpit
- Hyperion
- Pluto
iOS
Debug
Android
Multiplatform
Reverse engineering
Android
Screen mirroring
Android
iOS
- QuickTime
Emulator/simulator
Android
- Android SDK
- Genymotion :moneybag:
iOS
Manual testing
- Eploratory testing - sprints
- Checklists
- Bug Hunts
- Mob testing
- Testing dojo
Visual testing
Android
- screenshot-tests-for-android
- Designer Tools
- nakal
- Hyperion - App Inspection Tool
- FontSizeActivityScenario and FontSizeTestRule
iOS
Stress testing
Android
iOS
- ui-auto-monkey - DEPRECATED
- CrashMonkey
- SwiftMonkey
Linked
Android
- Android Development Culture. The Document. #qualitymatters
- Useful tips to inspect your Android app — Part 1
- The 2016 Android Developer Toolbox
- Mobile Testing of Location-Powered Android Apps
- Ultimate Android Reference
- Android UI Automation: Part 1, Building Trust
- Android UI Automation: Part 2, Making It Easy
- Kotlin: Using (Test) Robots to make Espresso
- Testing in-app purchases on Android
- Using Gradle build cache with Kotlin
- Add Superpowers to your Appium-Android tests
- Running arbitrary ADB commands via Appium
- Kotlin Static Analysis — why and how?
- Android Testing Codelab
- Android CI with kubernetes
- Taming the UI test monster
- Android testing with Espresso’s Idling Resources and testing fidelity
Performance
- Test UI performance
- Testing Android UI Performance
- Android Performance Case Study: Memory vs. Frame Time
- Android Performance monitoring [Part 1]
- Performance Testing of Android Apps
Security
iOS
- Optimizing Swift build times
- Testing iOS App Upgrades
- 5 Tools for Uploading iOS apps to iTunes Connect
- Using unit tests to identify & avoid memory leaks in Swift
- Xcode UI Tests with Embassy and Succulent
- UI Testing Cheat Sheet and Examples
- Getting started with XCUITest framework for testing iOS apps.
- New XCUITest Features With Xcode 9: Hands-on Exploration
- User Interface Testing - Apple Docs
- Xcode UI Testing Cheat Sheet
Security
React Native
Flutter
UI Tests
All
- Visualizing and optimizing real user performance on mobile - LinkedIn
- 10 Mobile App Testing Mistakes to Avoid
- Smartwatch Testing Cheat Sheet
- Mobile Testing Cheat Sheet
- The Mobile Test Pyramid
- Introducing the Software Testing Cupcake (Anti-Pattern)
- Richard Bradshaw, keynote: "Mobile - the clue is in the name"
- Understanding Your Mobile User
- The complete Checklist for Mobile Testing | David Tzemach
- Applying the SFDPOT heuristic to mobile testing
- Mobile App Test Coverage Model : LONG FUN CUP
- Ooga-chaka: Git hooks to enforce code quality
- A Comprehensive Guide To Mobile App Design
- Mobile A11y - Resources
Books
Security
Android
- android-security-awesome
- Awesome-Android-Security
- Fridump
- How to get started with mobile penetration testing for Android
- drozer
- androguard
- gradle-bodyguard
- MOBEXLER
- PiracyChecker
- Oversecured :moneybag:
- CRYLOGGER
- apkLeaks
- REX :moneybag:
- Mariana Trench
iOS
- Hacking iOS Applications
- How to get started with mobile penetration testing for iOS
- Introspy-iOS
- iOS Security Suite
React Native
Multiplatform
- Mobile Security Framework (MobSF)
- Dependency-Check
- OWSAP
- Mobile Security Wiki
- Mobile Application Penetration Testing Cheat Sheet
Static analysis
Android
- SDK lint
- PMD
- error-prone
- FindBugs
- rxlint
- checkstyle
- klint
- SonarLint
- detekt
- Dependency Injection usage Checks
- Static Code Analysis
iOS
Multiplatform
App state restoring
Android
Fill RAM
Web Services
Analytics
- Dynatrace :moneybag:
- monit24 :moneybag:
- New Relic :moneybag:
- FlowUp:moneybag:
- Raygun :moneybag:
- Bugsee :moneybag:
- Fabric
- Hockeyapp :moneybag:
- Splunk :moneybag:
- Appsee :moneybag:
- Appachhi :moneybag:
- AppSpector :moneybag:
- Perfetto
- Bugfender :moneybag:
- Shake :moneybag:
- Smartlook :moneybag:
- Apptim :moneybag:
Cloud Testing
- Monkop :moneybag:
- NimbleDroid :moneybag:
- Appdiff :moneybag:
- waldo :moneybag:
Device Farm
- Kobiton (free beta)
- Testdroid :moneybag:
- TestObject :moneybag:
- Perfecto Mobile :moneybag:
- Nativetap.io :moneybag:
- AWS Device Farm :moneybag:
- Google Firebase :moneybag:
- Xamarin Test Cloud :moneybag:
- Experitest :moneybag:
- Samsung Remote Test Lab
- pCloudy :moneybag:
- robotic.mobi :moneybag:
Crowd Testing
- Ubertesters :moneybag:
- TestFairy :moneybag:
- Beta Family :moneybag:
- Applause :moneybag:
- Testarmy :moneybag:
- crowdsourcedtesting :moneybag:
- Comparing 11 Mobile Beta Testing Tools
Stats
CPU
Android
iOS
RAM
Android
iOS
Battery
Android
iOS
Speed
Android
iOS
Monitoring
Duration of the method
Android
iOS
Binary size
Android
Other
Network Usage
Time between multiple independent events
Backend
API Chaos
Endpoint performance
Health status
Network
Proxy
- Charles Proxy :moneybag:
- Trusting custom root certificates on ios 10.3
- How to get charles proxy work with Android 7 nougat?
- Burp
- Fiddler
- Proxyman :moneybag:
Tools
Automated checking
Unit test
Android
iOS
Network Stubbing
Coverage
Android
iOS
Techniques
- Test Driven Development (TDD)
- Behaviour Driven Development (BDD)
- Acceptance Test Driven Development (ATDD)
e2e
Android
iOS
Multiplatform
Helpers
Android
- Test Butler
- Spoon
- Composer
- Swarmer
- Fork tools
- Awaitility
- AndroidTestXRunner
- OkHttp Idling Resource
- RxIdler
- Fladle
iOS
Network Stubbing
React Native
Multiplatfom
Pattern
Robot
Other
Android
Android
- AndroidTestingBox
- Android Testing Guide
- Android Testing with Kotlin
- Using Kotlin to test Android Applications
- Running Android UI Tests
- Test apps on Android
Test farm
Android
Other
Leaks
Android
iOS
Publishing
Android
Multiplatform
Continous Integration
Android
Other
Android
- ADB Event Mirror
- ADB Enhanced
- Radiography
- Diffuse
- Dependency Tree Diff
- Gradle Doctor
- Scabbard
- Version Checker Gradle Lint
- ANR-WatchDog
- apkeep
React Native
Flutter
Contributing
- Fork it!
- Create your feature branch:
git checkout -b my-new-feature
- Commit your changes:
git commit -am 'Add some feature'
- Push to the branch:
git push origin my-new-feature
- Submit a pull request :D
License
MIT License
Copyright (c) 2020 Maciej Gąsiorowski
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.