GoLang'de birim testleri ve entegrasyon testlerini ayırmak için yerleşik bir en iyi uygulama var mı (tanıklık edin)? Birim testleri (herhangi bir dış kaynağa dayanmayan ve bu nedenle gerçekten hızlı çalışan) ve entegrasyon testleri (herhangi bir dış kaynağa dayanan ve bu nedenle daha yavaş çalışan) bir karışımım var. Bu yüzden, dediğimde entegrasyon testlerinin dahil edilip edilmeyeceğini kontrol edebilmek istiyorum go test
.
En basit teknik, esas olarak bir -integrate bayrağı tanımlamak gibi görünebilir:
var runIntegrationTests = flag.Bool("integration", false
, "Run the integration tests (in addition to the unit tests)")
Ve sonra her entegrasyon testinin üstüne bir if ifadesi eklemek için:
if !*runIntegrationTests {
this.T().Skip("To run this test, use: go test -integration")
}
Yapabileceğimin en iyisi bu mu? Belki bir adlandırma kuralı veya bunu benim için gerçekleştiren bir şey olup olmadığını görmek için tanıklık belgelerini aradım, ancak hiçbir şey bulamadım. Bir şey mi kaçırıyorum?