Cuál es el mejor framework de pruebas unitarias de Swift?

Yo recomendaría la combinación Quick / Nimble. En el momento de escribir esta respuesta, Quick tiene 5.796 estrellas en Github y dicen que más de mil aplicaciones lo están usando, así que no puedes equivocarte usándolos.

Quick es un framework de desarrollo orientado al comportamiento para Swift y Objective-C, inspirado en RSpec, Specta y Ginkgo. Nimble es un framework de matchers, compañero de Quick, que sirve para expresar tus pruebas usando un DSL muy cercano al inglés fluido. It supports a lot of built-in matcher functions, asynchronous expectations, and the possibility of writing your own matchers.

Here you have an example of test code (taken directly from their wiki):

  1. // Swift 
  2.  
  3. import Quick 
  4. import Nimble 
  5.  
  6. class TableOfContentsSpec: QuickSpec { 
  7. override func spec() { 
  8. describe("the 'Documentation' directory") { 
  9. it("has everything you need to get started") { 
  10. let sections = Directory("Documentation").sections 
  11. expect(sections).to(contain("Organized Tests with Quick Examples and Example Groups")) 
  12. expect(sections).to(contain("Installing Quick")) 
  13.  
  14. context("if it doesn't have what you're looking for") { 
  15. it("needs to be updated") { 
  16. let you = You(awesome: true) 
  17. expect{you.submittedAnIssue}.toEventually(beTruthy()) 
  18. }