5

I use GHUnit framework for testing static library. At this moment I need tap the button Run to start my tests. But I would like to start tests when application launched because I need teamcity launch my testApp. So how can I modified standart UI and start tests automatic?

user633101
  • 225
  • 1
  • 3
  • 8

2 Answers2

2

Do Product -> Edit Scheme… -> Arguments -> Environment Variables, then set GHUNIT_AUTORUN to YES.

lowell
  • 517
  • 3
  • 12
-1

Make your unit test target dependent on your application, so that you always built the application before the unit tests.

Then, simply add a "setUp()" method to launch your app (and wait for it to be launched) before continuing.

  1. Check that your application is already running:

    NSArray* apps = [[NSWorkspace sharedWorkspace] valueForKeyPath:@"launchedApplications.NSApplicationBundleIdentifier"]; BOOL myAppIsRunning = [apps containsObject: com.mycompany.myapp];

  2. Launch your application (in setUP()) and wait:

    [[NSWorkspace sharedWorkspace] launchAppWithBundleIdentifier: com.mycompany.myapp options: NSWorkspaceLaunchWithoutActivation additionalEventParamDescriptor: NULL launchIdentifier: nil]; while (![self isRunning]) // see above { sleep(1); }

Philippe
  • 905
  • 6
  • 18