112 Repositories
Swift unit-testing Libraries
A flexible mock server for automated and regression testing of iOS, Android and other apps.
Note: This document is intended as a quick introduction to Voodoo. As Voodoo has a large number of features, please refer to Voodoo's Github Wiki for
ReactorKit + Unit Test
left7 현재 세계에서 상영중인 목록을 보여주는 ReactorKit + CleanArchitecture를 도입한 개인 프로젝트입니다. Directory Tree ├── Left7 │ ├── Application │ ├── Utility │ ├── Prese
A Swift package that provides convenient Lorem Ipsum text, images, colors and other placeholders for rapidly prototyping, building and testing your iOS applications.
Lorem Introducing Lorem, a placeholder generator library for iOS to help you rapidly prototype, build and test your iOS applications. By leveraging Sw
Gauntlet is a collection of testing utility methods that aims to make writing great tests easier.
Gauntlet What is Gauntlet? Gauntlet is a collection of testing utility methods that aims to make writing great tests easier and with more helpful and
CoreData + UI/Unit Tests + Pure Swift
What is it? 🙋🏻 It's a Todo iOS Application with offline support by the use of Core Data which has been developed as a code challenge. It's written p
Testable Combine Publishers - An easy, declarative way to unit test Combine Publishers in Swift
Testable Combine Publishers An easy, declarative way to unit test Combine Publishers in Swift About Combine Publishers are notoriously verbose to unit
Handling dimensional numbers with physical units in Swift made easy.
Dimensional arithmetics in Swift This package provides an easy and natural way of dealing with physical sizes. Performing complex arithmetics or unit
An elegant, flexible, type-safe dependency resolution framework for Swift
Guise is an elegant, flexible, type-safe dependency resolution framework for Swift. Flexible dependency resolution, with optional caching Elegant, str
Testing the UI without UI Testing, a Swift experiment.
UI tests without UI Testing experiment This repo is a small experiment to see if there's an "in-between" for testing iOS applications. More feature-le
An enhancement built on top of Foundation Framework and XCTest.
Beton is a Swift library built on top of the Foundation framework, that provides an additional layer of functionality, including easy localization, performance test measurement support, and convenience functionality. For us, Beton is primarily, but not exclusively, useful for server-side Swift engineering.
A framework for easily testing Push Notifications and Routing in XCUITests
Mussel 🦪 💪 A framework for easily testing Push Notifications, Universal Links and Routing in XCUITests. As of Xcode 11.4, users are able to test Pus
Detailed explanations and implementations of various maths concepts for writing high performance code/algorithms backed with Unit tests.
Detailed explanations and implementations of various maths concepts which can help software Engineers write high performance code/algorithms backed with Unit tests.
SDWebImageMockPlugin makes possible the creation of snapshot testing with views using SDWebImage to configure images
SDWebImageMockPlugin makes possible the creation of snapshot testing with views using SDWebImage to configure images.
A library for building applications in a consistent and understandable way, with composition, testing, and ergonomics in mind
A library for building applications in a consistent and understandable way, with composition, testing, and ergonomics in mind.
Exchanger - a simple iOS application demonstrating one of approaches to implement VIPER 💎 architecture in modern Objective-C
The Exchanger is a simple iOS application demonstrating one of approaches to implement VIPER 💎 architecture in modern Objective-C.
Marvel - Marvel Characters App using MVVM, and including unit tests
Marvel About The purpose of this project is to develop a app using MVVM, and inc
T - A simple testing framework using closures and errors
t Quickly test expectations What is t? t is a simple testing framework using clo
TestSchedulerDemo - Demonstration code for iOS Unit Tests and Asynchronous
TestSchedulerDemo This repository contains demonstration code for my Medium arti
Sample iOS App - A collection of examples and patterns for Unit Testing, UI Testing, handling Result/Optionals, writing documentation
Sample iOS App - A collection of examples and patterns for Unit Testing, UI Testing, handling Result/Optionals, writing documentation, and more
Freezer is a library that allows your Swift tests to travel through time by mocking NSDate class.
Freezer Freezer is a library that allows your Swift tests to travel through time by mocking NSDate class. Usage Once Freezer.start() has been invoked,
A Swift test double library. Guava - looks like an apple but it's not.
Guava Guava helps you to make your unit tests more flexible. It allows you to replace parts of your system under test with a test double objects. Tabl
Unit-Converter-SwiftUI - A simple Unit Converter iOS app built in the process of learning SwiftUI
SwiftUI-Unit-Converter A simple Unit Converter iOS app built in the process of l
Knil - Universal Links testing made easy
Knil 🔗 Knil made Universal Links testing easier. It fetches and parses apple-app-site-association file for you to quickly check whether Universal Lin
Iperf-ios - iPerf 3 library and app for iOS
iPerf iOS Run an iPerf3 client on your iPhone or iPad, including reverse mode and multiple stream selection: Download Download on the App Store. Why?
Guise - An elegant, flexible, type-safe dependency resolution framework for Swift
Guise is an elegant, flexible, type-safe dependency resolution framework for Swift. Flexible dependency resolution, with optional caching Elegant, str
I'm trying to make Flutter based Audio Unit Extensions possible.
Flutter AUv3 Audio Unit Error Demo Motivation We are the developers of Audanika, a professional MIDI Controller app written in Flutter. Many of our us
Project shows how to unit test asynchronous API calls in Swift using Mocking without using any 3rd party software
UnitTestingNetworkCalls-Swift Project shows how to unit test asynchronous API ca
SwiftUI & Scenekit hit testing example.
HitTestApp SwiftUI & Scenekit hit testing example. This example application is written for macOS, though with minor changes it should be able to be ch
A Swift library for documenting, isolating, and testing SwiftUI, UIKIt & AppKit components.
A Swift library for documenting, isolating, and testing SwiftUI, UIKit & AppKit components. Minimal Example An example demonstrated with the Slider ui
Unit conversion library for Swift.
MKUnits MKUnits is extremely precise unit conversion library for Swift. It provides units of measurement of physical quantities and simplifies manipul
Unit converter in Swift
Scale ❤️ Support my app ❤️ Push Hero - pure Swift native macOS application to test push notifications PastePal - Pasteboard, note and shortcut manager
Basic (simple) App for MacOS with simple functionality
Test Mac App Basic (simple) App for MacOS with simple functionality General Details Build : 1.0 Author Alias : gonewithharshwinds Brand : ADV Descript
I built this application with unit testing and test-driven development to understand TDD theory and practice
TestDrivenDevelopment Description I built this application with unit testing and test-driven development to understand TDD theory and practice, to wri
Sample project for testing out focus in SwiftUI and iOS 15
This project was to test out different ways of enabling focus in a SwiftUI app.
Command line tool written in Swift dedicated to perform Mutation Testing of your Swift project
Mutanus Command line tool written in Swift dedicated to perform Mutation Testing of your Swift project. Inspired by Muter Usage mutanus -c path-to-co
📸 Delightful Swift snapshot testing.
📸 SnapshotTesting Delightful Swift snapshot testing. Usage Once installed, no additional configuration is required. You can import the SnapshotTestin
Snapshot view unit tests for iOS
iOSSnapshotTestCase (previously FBSnapshotTestCase) What it does A "snapshot test case" takes a configured UIView or CALayer and uses the necessary UI
XCTestExtensions is a Swift extension that provides convenient assertions for writing Unit Test.
XCTestExtensions Features XCTAssertEventually (that convenient assertions for writing Unit Test). Use "XCTAssertEventually", you can write asynchronou
iOS Simulator type agnostic snapshot testing, built on top of the FBSnapshotTestCase.
SnappyTestCase iOS Simulator type agnostic snapshot testing, built on top of the FBSnapshotTestCase. Why? Snapshot testing helps to deliver views that
Graduation from messy XCTAssertEqual messages.
A tool for providing the 2 features for efficient testing: Output diff between 2 any types Default implementation of Equatable for any types Platform
Swifty tool for visual testing iPhone and iPad apps. Every pixel counts.
Cribble Cribble - a tool for visual testing iPhone and iPad apps. Every pixel counts. Getting Started An example app is included demonstrating Cribble
Network testing à la VCR in Swift
Vinyl Vinyl is a simple, yet flexible library used for replaying HTTP requests while unit testing. It takes heavy inspiration from DVR and VCR. Vinyl
Runtime introspection and unit testing of SwiftUI views
ViewInspector 🕵️♂️ for SwiftUI ViewInspector is a library for unit testing SwiftUI views. It allows for traversing a view hierarchy at runtime provi
Bluepill is a reliable iOS testing tool that runs UI tests using multiple simulators on a single machine
Bluepill is a tool to run iOS tests in parallel using multiple simulators. Motivation LinkedIn created Bluepill to run its large iOS test suite in a r
iOS UI Automation Test Framework
Deprecation: EarlGrey 1.0 is deprecated in favor of EarlGrey 2.0 which integrates it with XCUITest. Please look at the earlgrey2 branch. EarlGrey 1.0
Write unit tests which test the layout of a view in multiple configurations
Overview This library enables you to write unit tests which test the layout of a view in multiple configurations. It tests the view with different dat
Control your iPhone from inside Xcode for end-to-end testing.
Remote - Control your iPhone from Xcode "Remote" is a plugin for Xcode that allows you to control an iPhone from a window on your Mac during developme
An understated approach to iOS integration testing.
Subliminal is a framework for writing iOS integration tests. Subliminal provides a familiar OCUnit/XCTest-like interface to Apple's UIAutomation frame
Keep It Functional - An iOS Functional Testing Framework
IMPORTANT! Even though KIF is used to test your UI, you need to add it to your Unit Test target, not your UI Test target. The magic of KIF is that it
AppiumLibrary is an appium testing library for RobotFramework
Appium library for RobotFramework Introduction AppiumLibrary is an appium testing library for Robot Framework. Library can be downloaded from PyPI. It
AB testing framework for iOS
ABKit Split Testing for Swift. ABKit is a library for implementing a simple Split Test that: Doesn't require an HTTP client written in Pure Swift Inst
Remote configuration and A/B Testing framework for iOS
MSActiveConfig v1.0.1 Remote configuration and A/B Testing framework for iOS. Documentation available online. MSActiveConfig at a glance One of the bi
Multivariate & A/B Testing for iOS and Mac
This library is no longer being maintained. You can continue to use SkyLab in your projects, but we recommend switching another solution whenever you
Switchboard - easy and super light weight A/B testing for your mobile iPhone or android app. This mobile A/B testing framework allows you with minimal servers to run large amounts of mobile users.
Switchboard - easy A/B testing for your mobile app What it does Switchboard is a simple way to remote control your mobile application even after you'v
A Mac and iOS Playgrounds Unit Testing library based on Nimble.
Spry Spry is a Swift Playgrounds Unit Testing library based on Nimble. The best thing about Spry is that the API matches Nimble perfectly. Which means
A light-weight TDD / BDD framework for Objective-C & Cocoa
Specta A light-weight TDD / BDD framework for Objective-C. FEATURES An Objective-C RSpec-like BDD DSL Quick and easy set up Built on top of XCTest Exc
Repository to help people learning testing
Testing Training The purpose of this repository is to help people learn the basics of testing in Swift. I decided to prepare this repository because m
A testing MQTT react native library
react-native-awesome-testing abc Installation npm install react-native-awesome-testing Usage import { multiply } from "react-native-awesome-testing";
A low-maintenance, simple framework for a snapshot testing, which takes into account a snapshot difference factor (must have if you're using CI).
CornSnapshotTesting A low-maintenance, simple framework for a snapshot testing, which takes into account a snapshot difference factor (must have if yo
RetroVisor helps you with inspecting UIViews in your unit tests.
RetroVisor RetroVisor helps you with inspecting UIViews in your unit tests. You do test views in unit tests, right? Right? Usually, I mark subview pro
For Testing APIs of NYTimes
NYTimes-APIs For Testing APIs of NYTimes Mark Dennis Diwa 👓 To run the app: Open terminal first then run pod install. Open workspace. Run the app on
Catching fatal errors in unit tests
Precondition Catching When running tests which hit fatal errors, often preconditions the built-in support with XCTest. One package which supports cach
WKZombie is a Swift framework for iOS/OSX to navigate within websites and collect data without the need of User Interface or API, also known as Headless browser.
WKZombie WKZombie is an iOS/OSX web-browser without a graphical user interface. It was developed as an experiment in order to familiarize myself with
This is BouncyBall, from Develop in Swift Explorations Unit 3, completed into Part 3, where the onTapped function gets a little squirrelly
This is BouncyBall, from Develop in Swift Explorations Unit 3, completed into Part 3, where the onTapped function gets a little squirrelly. Use this version when you add a function to be called when the funnel is tapped and taps aren't registered in the simulator.
Genything is a framework for random testing of a program properties.
Genything is a framework for random testing of a program properties. It provides way to random data based on simple and complex types.
Advanced Networking Layer Using Alamofire with Unit Testing
Advanced Networking Layer Using Alamofire with Unit Testing
This is MVP pattern testing with Swift.
sample-swift-mvp MVP 패턴에 대한 이해를 높이기 위해서 샘플 코드 작성 및 기록 MVP 패턴 MVP(Model-View-Presenter) 패턴은 소프트웨어 아키텍처 패턴이다 M (Model) - 데이터 모델 - 실질적인 데이터 V (View) - M
A Simple iOS Testing Framework
LumberMill Stupidly Simple Logging for iOS. LumberMill is a simple logging library for iOS 10 and Swift 3.0. It allows users to Log files with 5 diffe
Mock UIImagePickerController for testing camera based UI in simulator
Mock UIImagePickerController to simulate the camera in iOS simulator.
A simple and lightweight matching library for XCTest framework.
Match A simple and lightweight matching library for XCTest framework. Getting started Swift Package Manager You can add Match to your project by addin
Library for unifying the approach to network mocking in iOS unit- & UI-tests.
TinkoffMockStrapping Example To run the example project, clone the repo, and run pod install from the Example directory first. Requirements Installati
Trying to implement Unit Tests for @Binding properties in a ViewModel
BindingTester Trying to implement Unit Tests for @Binding properties in a ViewModel ViewModel to be tested class SheetViewModel: ObservableObject {
📘A library for isolated developing UI components and automatically taking snapshots of them.
A library for isolated developing UI components and automatically taking snapshots of them. Playbook Playbook is a library that provides a sandbox for
A collection of tools for debugging, diffing, and testing your application's data structures.
Custom Dump A collection of tools for debugging, diffing, and testing your application's data structures. Motivation customDump diff XCTAssertNoDiffer
Runtime introspection and unit testing of SwiftUI views
ViewInspector is a library for unit testing SwiftUI views. It allows for traversing a view hierarchy at runtime providing direct access to the underlying View structs.
Find common xib and storyboard-related problems without running your app or writing unit tests.
IBAnalyzer Find common xib and storyboard-related problems without running your app or writing unit tests. Usage Pass a path to your project to ibanal
SwiftUI sample app using Clean Architecture. Examples of working with CoreData persistence, networking, dependency injection, unit testing, and more.
Articles related to this project Clean Architecture for SwiftUI Programmatic navigation in SwiftUI project Separation of Concerns in Software Design C
SpanGrid is an enriched SwiftUI LazyVGrid that supports a number of extra features.
SpanGrid is an enriched SwiftUI LazyVGrid that supports a number of extra features.
An open source library for building deep-linkable SwiftUI applications with composition, testing and ergonomics in mind
Composable Navigator An open source library for building deep-linkable SwiftUI applications with composition, testing and ergonomics in mind Vanilla S
A handy collection of more than 500 native Swift extensions to boost your productivity.
SwifterSwift is a collection of over 500 native Swift extensions, with handy methods, syntactic sugar, and performance improvements for wide range of
Swift Package with examples of how to tests iOS apps
GimmeTheCodeTDD A swift package with examples of unit tests in iOS development. Requirements Xcode 13 Content Dependency Injection Constructor Injecti
Swift-based fuzzing tools
The Mac is changing. We've long had a platform where out-of-the-box we were able to compile and run tools in a variety of languages.
An open source library for building deep-linkable SwiftUI applications with composition, testing and ergonomics in mind
Composable Navigator An open source library for building deep-linkable SwiftUI applications with composition, testing and ergonomics in mind Vanilla S
Implementing and testing In-App Purchases with StoreKit2 in Xcode 13, Swift 5.5 and iOS 15.
StoreHelper Demo Implementing and testing In-App Purchases with StoreKit2 in Xcode 13, Swift 5.5, iOS 15. See also In-App Purchases with Xcode 12 and
Fastbot is a model-based testing tool for modeling GUI transitions to discover app stability problems
Fastbot is a model-based testing tool for modeling GUI transitions to discover app stability problems. It combines machine learning and reinforcement learning techniques to assist discovery in a more intelligent way.
Hammer is a touch, stylus and keyboard synthesis library for emulating user interaction events
Hammer is a touch, stylus and keyboard synthesis library for emulating user interaction events. It enables better ways of triggering UI actions in unit tests, replicating a real world environment as much as possible.
Combine SnapshotTesting images into a single asset
An extension to SnapshotTesting which allows you to create images combining the output of multiple snapshot strategies, assuming they all output to UIImage.
Daily News is a news app with good looking user interface ! Apps architecture is MVVM and used RxSwift for binding.
Daily News Hey ! Daily News is a news app with good looking user interface ! Apps architecture is MVVM and used RxSwift for binding. Architecture I pr
A convenient mocking framework for Swift
// Mocking let bird = mock(Bird.self) // Stubbing given(bird.getName()).willReturn("Ryan") // Verification verify(bird.fly()).wasCalled() What is Mo
Automatic 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
Buildasaur Automatic testing of your Pull Requests on GitHub and BitBucket using Xcode Server. Keep your team productive and safe. Get up and running
Another network wrapper for URLSession. Built to be simple, small and easy to create tests at the network layer of your application.
Another network wrapper for URLSession. Built to be simple, small and easy to create tests at the network layer of your application. Install Carthage
WKZombie is an iOS/OSX web-browser without a graphical user interface.
WKZombie is a Swift framework for iOS/OSX to navigate within websites and collect data without the need of User Interface or API, also known as Headless browser. It can be used to run automated tests / snapshots and manipulate websites using Javascript.
Testing the new ShazamKit framework announced at WWDC 2021
ShazamKit Demo Using the ShazamKit framework announced at WWDC 2021 to perform song recognition. Demo Tweet Usage Open the project and change the Bund
iOS architectures - MVC, MVP, MVVM, MVVM-C, ReactorKit, VIPER, Clean Architecture
iOS architectures - MVC, MVP, MVVM, MVVM-C, ReactorKit, VIPER, Clean Architecture, RIBs; Repository Pattern, Rxflow, Swinject, Tuist, Xcodegen, Cocoapods, SPM, Carthage + Rome
Colour blindness simulation and testing for iOS
Color Deficiency Snapshot Tests This package makes it easier for you to understand the implications of your app's design on users with various types o
SwiftUI sample app using Clean Architecture. Examples of working with CoreData persistence, networking, dependency injection, unit testing, and more.
Articles related to this project Clean Architecture for SwiftUI Programmatic navigation in SwiftUI project Separation of Concerns in Software Design C
A handy collection of more than 500 native Swift extensions to boost your productivity.
SwifterSwift is a collection of over 500 native Swift extensions, with handy methods, syntactic sugar, and performance improvements for wide range of
RandomKit is a Swift framework that makes random data generation simple and easy.
RandomKit is a Swift framework that makes random data generation simple and easy. Build Status Installation Compatibility Swift Package Manager CocoaP
📘A library for isolated developing UI components and automatically taking snapshots of them.
A library for isolated developing UI components and automatically taking snapshots of them. Playbook Playbook is a library that provides a sandbox for