Açılış Konuşmaları
Tony Voellm (Google)
Açılış Konuşması - Kalite Güvencesinden Test Mühendisliğine Geçiş
Ari Shamash (Google)
Bir uygulama oluşturdunuz. Bu uygulamayı başlattınız. Yayına çıkabilir, biraz ses toplayabilir, biraz para toplayabilir, hepsini fırlatabilir ve sonra sıfırdan başlayabilirsiniz. Ancak yeni özelliklere olan talep çok yüksektir. Bu nedenle, benzeri görülmemiş bir hızla, daha önce görülmemiş bir hıza doğru ilerlemeniz isteniyor. Yanlış! Şimdi önemli olan nedir?
Büyük bir veri miktarına ulaşıp sıfırdan başlamak zorunda kalmadan, elinizdekini geliştirmeniz ve nefes kesici hızda yüksek kaliteli özellikler eklemeye devam etmeniz yeterli. Ayrıca, zaten sorun yaşamadığınızdan emin olmanız gerekir. Bunu nasıl yapabilirsiniz? Neyse ki yazılım mühendisliği sektöründe bu yaygın senaryonun ele alındığı yeni bir alan oluşturuluyor: Google'da biz buna "test mühendisliği" diyoruz.
Bu konuşma, test mühendisliğinin ne olduğuna, kalite kontrol sisteminden nasıl geliştiğine ve bir bütün olarak sektörün test mühendisliğini nasıl uyguladığına (Google'da nasıl uygulandığına dair belirli örneklerle) odaklanacaktır.
Geniş Ölçekte Test Sistemleri @Twitter
James Waldrop (Twitter)
Cem, performans testlerinde kullanılan araçları, süreci ve felsefeyi Twitter'da tartışacak. Kodu üretime dağıtmadan önce Twitter'ın mühendislik ekiplerinin yük testleri gerçekleştirebilmesi için Iago açık kaynak yük testi kitaplığına özellikle odaklanılacak. Bu testlerde, bu testlerden bazılarının (kaynak kodu dahil) uygulama ayrıntıları ve OAuth ile rastgele Thrift protokolleri gibi karmaşık faktörlerin nasıl yönetildiği açıklanmaktadır.
Mobil İşletim Sistemini Nasıl Test Edebilirsiniz?
David Burns (Mozilla) ve Malini Das (Mozilla)
Firefox OS dünyasına girmeye karar verdiğimizde Mozilla ile karşılaştığımız sorun budur. Nereden başlayacağım ve nasıl yapacağım ilginç bir görevdi. Bu sorunu nasıl çözdüğümüzü ve yeni çerçevemizi nasıl oluşturduğumuzu dinlemeyi unutmayın.
Sürekli Teslim Ardışık Düzeninde Mobil Otomasyon
Igor Dorovskikh (Expedia) ve Kaustubh Gawande (Expedia)
Expedia, 2012'nin başlarında Mobil Web ve iOS/Android uygulamalarına yatırım yapmaya başladı. Aynı zamanda Test Engineers, ürünlere kalite ve test edilebilirliği başından itibaren test etmek için test otomasyonu çözümleri geliştirmeye başladı. Bu konuşmada, Expedia'nın Çevik geliştirme ve sürekli teslim ortamında otomatik testler oluşturmak için açık kaynak araçlardan yararlanma konusundaki bilgimizi ve deneyimlerimizi paylaşacağız. Test Piramidi hakkında konuşacağız ve bizim için yararlı olan belirli açık kaynak araçlarını daha ayrıntılı olarak inceleyeceğiz. Cucumber, web otomasyon aracı Selenium-WebDriver, iOS otomasyon aracı Frank, Android otomasyon araçları Robotium ve Calabash ile Sürekli Entegrasyon sistemi Jenkins gibi BDD araçlarından yararlanabiliriz. Ayrıca TDD, Çift Programlama, Derleme ve Test Radyatörleri gibi benimsemeye çalıştığımız Çevik teslimat ilkelerinden bazılarını sizinle paylaşacağız. Son olarak, çevikliğe yaptığımız yatırımdan ve test otomasyonundan elde ettiğimiz avantajlardan bazılarına ve bunları sürekli teslim hedeflerimize nasıl ulaştırdığımıza değineceğiz.
GStreamer ve OpenCV ile Otomatik Set Üstü Kutu Testleri
David Röthlisberger (YouTube)
3 dakika içinde GStreamer'ın komut satırı araçlarını ve OpenCV'yi kullanarak bir video yakalama görüntü sistemi oluşturacağız. (GStreamer, açık kaynaklı bir medya işleme çerçevesidir. OpenCV - "Open Computer Vision", açık kaynaklı bir resim işleme kitaplığıdır.)
Böyle bir sisteme örnek olarak http://stb-tester.com verilebilir. Bu araç, set üstü kutularımızın kullanıcı arayüzü testini otomatik hâle getirmek için YouView ile geliştirilmiştir. St-tester'ı, GStreamer desteklerinin sunduğu esnekliği, sağladığı bazı olanakları ve gelecekte karşılaşacağımız zorlukları açıklayacağız.
Chrome için web sürücüsü
Ken Kania (Google)
Chrome, Windows'a özel bir tarayıcı olarak kullanıma sunulduğu andan itibaren Mac, Linux, Chrome OS ve son olarak Android ve iOS'u da kapsayacak şekilde genişletildi. Bu platformlarda web uygulamalarının kullanıcı düzeyinde test edilmesi zordu ve çeşitli otomasyon yaklaşımları gerektiriyordu. Bu konuşma, Chrome ekibinin WebDriver'ı tüm platformlarda kullanıma sunmak için yaptığı çalışmaları açıklar. Bu kılavuzda, temel yaklaşımla ilgili teknik bir bakış sunulur ancak geliştiricilerin Chrome'un çeşitli platformları için testler yazmak üzere yeni ChromeDriver'ı nasıl kullanabileceğine odaklanılır. Ayrıca, projenin mevcut durumu ve gelecekteki yol haritası da burada ele alınacaktır.
Karma - JavaScript İçin Test Çalışanı
Vojta Jina (Google)
JavaScript uygulamalarının, gerçek tarayıcılarda JavaScript uygulamalarını test etmeyi sorunsuz ve keyifli hale getiren test çalıştırıcısına giriş.
Test işlemi, birçok tarayıcı ve cihazda çalışması gereken bir JavaScript uygulaması oluştururken isteğe bağlı değildir. Ancak bu çeşitli ortamlarda test yapmak çok zordur. Karma, bu zahmetli görevi genellikle bir pastaya dönüştürüyor. JavaScript testlerini telefonunuz veya tabletiniz gibi gerçek tarayıcılarda veya cihazlarda doğrudan terminalinizin rahatlığından ya da en sevdiğiniz IDE'den yürütmenize olanak tanır.
Otomatik Video Kalitesi Ölçümleri
Patrik Höglund (Google)
Evet, video kalitesi gibi karmaşık ve öznel ölçümleri otomatik olarak test etmek mümkün. Bu konuşmada, bir WebRTC görüntülü görüşmesinin sürekli ve otomatik uçtan uca testini nasıl gerçekleştirdiğimiz gösterilecektir. Araç zincirini genel hatlarıyla ele alırken bu çerçeveyi oluştururken karşılaştığımız zorluklara göz atacağız. Bu, medya testinizi bir üst düzeye nasıl taşıyacağınız konusunda ilham almak istiyorsanız mükemmeldir.
İyi Uygulamalara Kötü Olaylar Olduğunda...
Mineral Mishra (Netflix)
Mobil ve tablet bilişimin artışı, uygulama geliştirme platformlarıyla yazılım sektörünü kasıp kavuruyor. Bilişim platformlarında tüketici uygulamaları geliştirmenin son kullanıcılar için kendi sihirli bir deneyimi var. Tüketicilere yönelik yazılım şirketleri, bu platformlar için bir uygulama geliştirirken her zaman en iyi sonucu vermeye çalışır. Ancak, uygulama geliştirmedeki en büyük zorluk, şirketlerin uygulamanın ilk sürümünü kullanıma sunmasından sonra başlar. Tüketiciler ve yazılım şirketleri en son özellikleri ve işlevleri en kısa sürede en yüksek kalitede geliştirmeyi istiyor. Bu durum, yığının her katmanında kesintisiz kod kaybına yol açar. Kullanıcı arayüzü otomasyon mühendisleri olarak, uygulama sorunlarını daha erken yakalamak için çeşitli algılama sistemleri geliştiriyoruz. Bu konuşmada, söz konusu algılama sistemiyle ilgili bazı zorlukları ve başarıları paylaşacağım. Başvuru katmanı dışında kalan sorunları tespit etmemize yardımcı olan bu çözüm, kullanıcı deneyimini olumsuz yönde etkiledi.
Öğrenim ve Test Amaçlı Eğitim
Tao Xie (Kuzey Carolina Devlet Üniversitesi)
Bu konuşmada, yüz binlerce kullanıcıya ölçeklendirilebilen online bir programlama sisteminde otomatik notlandırmanın temelini oluşturan otomatik test oluşturma yönteminden yararlanan Pex4Fun (http://www.pexforfun.com/) kullanıma sunuluyor. Sınıf dışında programlama odaklı bir oyun deneyimi sunarak kullanıcıları parametreleştirilmiş birim testleri yazma gibi test becerileri de dahil olmak üzere çeşitli programlama ve yazılım mühendisliği becerileri öğrenmeleri için eğitir. Pex4Fun, ödev notlandırma sorununa önemli ölçüde katkı sağlıyor ve etkileşimli oyunları temel alan eğlenceli bir öğrenme deneyimi sunuyor. Pex4Fun, toplulukta son derece popüler oldu: Haziran 2010'da halka açıldığı için, "Pexx'e Sor" düğmesinin (kullanıcıların Pex4Fun'da oyunları çözmek için yaptığı girişimleri belirtir) tıklama sayısı, 2013'ün başlarından bu yana bir milyonu aştı.
Açılış Konuşması - Facebook Android'de Facebook'u Nasıl Test Eder?
Simon Stewart (Facebook)
Facebook, en popüler Android uygulamalarından biridir. Bu konuşmada, Facebook'un her sürümün olabildiğince iyi olmasını sağlamak için neler yaptığını öğreneceksiniz. Kodu yönetme yöntemimizden testlere yönelik yaklaşımlarımıza ve test sürecine kadar her konuyu ele alacağız.