NSBogan An Automation Blog
I have started this blog after doing UI Automation Testing for a while.
If you are interested in topics like
- Cross-platform UI Automation for Mobile (Calabash, Cucumber)
- Build automation for iOS and Android
- Tools and scripts
You might find something useful in this blog.
Async Swift Scripting
A trick to use asynchronous callbacks in Swift scripts.
Code Coverage for iOS (Xcode 7)
Create code coverage reports for iOS unit tests using new Xcode 7 code coverage feature.
Equatable NSObject With Swift 2
Subtle differences in implementing
NSObjectsubclasses in Swift 1.2 and 2.0.
JIRA ID in Git Commit Messages
A quick tip on how to automatically add JIRA ID in each git commit message.
App Store Version Territory
Homegrown research on iOS app short and bundle version strings and how to specify them properly in respect to iTunes Connect and TestFlight.
Jenkins Job DSL - Configure Block
A hands-on experience with Configure Blocks in Jenkins Job DSL.
Fix Objective-C Imports
A way to change Objective-C
#import <Framework/Framework.h>to modern
Fix Objective-C File Header Comment
A simple way to fix file headers in your Objective-C (an not only) files.
Jenkins Job DSL - Properties
Learn how to work with global properties in DSL Groovy script, and how to handle missing properties.
Provisioning Profiles, Sigh...
In this article you will find out while iOS provisioning profiles are a nightmare and if there is a way to automate provisioning profiles management.
Hacker Rank in Swift - Reuse Code
Reuse Swift IO code for multiple HackerRank assignments.
HackerRank in Swift - Makefiles
A basic makefile to help you with testing your HackerRank solutions locally.
HackerRank in Swift - StdIn
A way to read standard input for HackerRank assignments in Swift.
Password Generator in Swift
Simple password generator in Swift.
What's your destination?
Few hands on tricks about
Install Java on Mac OS X
A short how-to for installing and configuring Java Development Kit on Mac OS X.
CocoaPods for Enterprise
A practical example of using CocoaPods for enterprise projects.
OCLint is a fantastic static code analysis tool for improving quality and reducing defects by inspecting C, C++ and Objective-C code.
Makefiles for Mobile CI
A look at Xcode projects from another angle, trying to build things on another level.
Code Coverage for iOS (gcov)
Create code coverage reports for iOS unit tests using
Note that this approach may not work with Xcode 7 and future Xcode updates. For information on how to generate test coverage reports using new Profdata format, check this article).
- Clang Static Analyzer
Bitbucket Branches and Jenkins Job DSL
A simple example of applying Jenkins Job DSL Plugin in real life.
Xcode Derived Data
What is Xcode Derived Data and why is it important?
Daemon vs Agent
Comparison of Mac OS X Launch Daemon and Launch Agent in regards to Mobile CI.
Jenkins Remote Node on Mac OS X
A guide for setting up a remote build node for Jenkins CI server.
Jenkins CI Server on Mac OS X
A guide for setting up a Jenkins CI server on Mac OS X machine.
Bamboo Remote Agent on Mac OS X
A short giude for installing and configuring Bamboo Remote Agent on Mac OS X.
Bamboo Group Agent
Bamboo Group Agent plugin for Mac agents.
Bamboo CI Server on Mac OS X
This article covers the details of installing a Bamboo CI Server on Mac OS X.
Bamboo vs Jenkins
A biased and subjective comparison of Bamboo and Jenkins as CI servers for mobile development, based on practical experience with both.
Swift Dictionary Literal Convertible
A practical example of Swift’s
Swift and Objective-C Interoperability
I’ve stumbled on an issue while working on my hobby project. One of the few related to Swift and Objective-C interoperability.
- Flappy Swift
Shark 2 for iOS/OS X
SHARK provides libraries for the design of adaptive systems, including methods for linear and nonlinear optimization (e.g., evolutionary and gradient-based algorithms), kernel-based algorithms and neural networks, and other machine learning techniques.
This script is created to build framework for Shark version 2.3.4.
Install Atlassian CLI with RPM
Another follow up to introduction to Atlassian CLI.
This post describes how to create an RPM package for Atlassian CLI to install it on RMP-based Linux distributions.
Install Atlassian CLI with Homebrew
This is a follow up to introduction to Atlassian CLI.
In this post you will learn how to create custom Homebrew formula, install Atlassian CLI via Homebrew tap and customize tools for you company environment.
Share Xcode Schemes
So you are facing one of these Xcode errors where it tells you that there’s no such scheme? This post could help to explain why Xcode does it and how to solve this problem.
Build Android in the Cloud
In this example, you are given a task to build Android app on a 64-bit AWS Linux build agent running in Amazon Cloud (AWS).
Atlassian CLI Client
If you happen to use Atlassian products like JIRA, Bamboo, Stash, Confluence, etc., you may be surprised to know that all these products are backed by a handy command line interface, namely Atlassian Command Line Interface.