Swift 5 Snapshot Testi

AdınaCardNumberTestskoyalım。

Bir kredikartıView’ıyapıpbunun快照testini yapmak istiyorum。 本AMCreditCardViewadındabir Github reposundanyararlandım。 İndiripiçindekiAMCreditCardView查看地图,查看如何设置Alalım。 Swift 5içinufak bir fixyaptım。

Böylece快照testiniökrenanak观看。 Unutma,依依

Ardındanbir测试班’ıyazıyoruz。 FBSnapshotTestCase’tentüremelibu类。 哦,XCTestCase’tentürüyorkendiiçinde。

Biz enbaştaUnit Test’li bir projeistediğimiziçinXcode bizimiçinbir taneayarladı。 Onuaçıpiçineaşağıdakikodu tamamenyapıştıralım。

 导入XCTest 
  @testable导入CardNumber 
 导入FBSnapshotTestCase 
 类CardNumberTests:FBSnapshotTestCase { 
 覆盖func setUp(){ 
  super.setUp() 
  recordMode = true 
  } 
  func testCardType(){ 
 让cardView = AMCreditCardView( 
框架:CGRect(x:0,y:0,宽度:240,高度:150))
  cardView.cardNumber =“ 4374123412341234” 
  cardView.cardHoldersName =“ ERK EKIN” 
  cardView.expirationDate =“ 06/32” 
  FBSnapshotVerifyView(cardView) 
  } 
  } 

Sonra Command + U’ya basarak testimiziçalıştıralım。

Moraller bozuldu mu? Bozulmasılazımçünkü测试未通过etti。

测试失败etmediaslında,或失败。

  recordMode = true 

dediğimiziçingidip Referansklasörüne(CardNumber / CardNumberTests /)testCardType@2x.pngadındabirgörseloluşturdu。 Gidipaçalım。

Yukarıdakigörseligörüyyolmalısınız。 Bu bizim推荐人görselimiz。 Bundan sonraki testlerinartıkbugörsellekarşlılaştırmayapabilmesiiçinrecordMode’u false olarakayarlamamızgerekiyor。

  recordMode =假 

diyelim和tekrar Command + U diyelim。

Testlergeçmişolmalı。

快照测试结果不正确,测试结果失败,测试结果失败。

KüçükAuto Layout自动布局yollamalarınızınçokgözönündeolmayan视图

Ben buyazıdaiOSSnapshotTestCasekütüphanesinikullandım(https://github.com/uber/ios-snapshot-test-case)。 Ancakbirkaçtane daha var Github’da。 注释:https://github.com/pointfreeco/swift-snapshot-testing。 Deneyin severseniz bana dayazın。