TypeScript ile tarayıcı testleri nasıl yazılır
Microsoft'un TypeScript'ini kullanarak bir istemci JavaScript kütüphanesi geliştiriyorum. Birkaç test yazmak ve ideal olarak bunları tarayıcıda (node.js yerine) çalıştırmak istiyorum.
Resmî TypeScript Örneklerinin hiçbiri test kodu içermiyor, bu yüzden orada herhangi bir rehberlik yok.
TypeScript ve Mocha'yı birleştiren en az bir örnek buldum, ama Node altında çalışıyor. Ben tarayıcı için geliştiriyorum, bu yüzden testleri tarayıcıda yapmak isterim.
Mevcut yaklaşımım, kütüphanemi tüm require ifadelerini satır içine almak için grunt-typescript ve grunt-browserify kullanarak tek bir JS dosyasına derlemek. Sonra bunu ve test dosyalarını test çalıştırıcısına yüklüyorum:
<script src="../build/library.js"></script>
<!-- external test dependencies -->
<script src="../node_modules/mocha/mocha.js"></script>
<script src="../node_modules/chai/chai.js"></script>
<!-- the tests -->
<script>mocha.setup('bdd')</script>
<script src="../build/test/my-test.js"></script>
Ancak bu hiç işe yaramıyor. Testimin test ettiği kodu import etmesi gerekiyor ve tarayıcı derlenmiş koddaki ortaya çıkan require ifadesini nasıl işleyeceğini anlamıyor. requirejs kullanma girişimlerim tamamen boşuna bitti.
TypeScript kodunu nasıl test edebilirim? Şunları yapabilmek istiyorum:
- Testleri tarayıcıda çalıştırın (tercihen Mocha ve Chai kullanarak).
- Aynı projede başka bir dosyayı içe aktardığı kadar karmaşık test kodu.
- Dış node modüllerine bazı bağımlılıkları dahil edin.