Tests are executable documentation.
Kodu küçük parçalar olarak ele alır ve çalışabilirliğini test eder.
Küçük parçaların bir araya gelerek oluşturduğu yapıların çalıştığından emin olur.
Browser otomasyonu ile arayüzü test eder.
Jest, Jasmine ve Mocha
Selenium, Cypress.io
import TurkishLetter from '../../src/scripts/common/turkish-letter';
describe("TurkishLetter class'ı", function(){
let turkishLetter;
beforeEach(function(){
turkishLetter = new TurkishLetter();
});
it("Türkçe büyük harfleri küçük harf yapabilmeli", function(){
expect(turkishLetter.toLower("İIŞĞÜÖÇ")).toBe("iışğüöç");
});
it("Türkçe küçük harfleri büyük harf yapabilmeli", function(){
expect(turkishLetter.toUpper("iışğüöç")).toBe("İIŞĞÜÖÇ");
});
});
Integration testlere neden ihtiyaç var?