GTAC 2016: Sunular

Açılış Konuşmaları

Matt Lowrie (Google)

İşletme ve Mühendislik Verimliliğinin Evrimi

Manasi Joshi (Google)

Bağlantılar: Video, Slaytlar

Bu açılış konuşmasında herkesi, mühendislik üretkenliği disiplininin Google'da nasıl geliştiği ve bu durumun Google'ın hızlı hareket etme, istikrarlı kalma ve geliştirme/yayınlama/izleme süreçleri yoluyla büyük ölçüde güven sağlama açısından iş artışı açısından ne kadar önemli ve gerekli olduğunu anlamaya çalışıyoruz. Ayrıca şu anda karşılaştığımız bazı zorlukları ve Google'ın yaşadığı son derece bağlantılı/dikey bir ürün deneyiminde platformlar arası testi yeni ufuklardan da ima ediyoruz.

Telepresence Robot Sürüşünü Otomatikleştirme

Tanya Jenkins (Tuvalet Danışmanlığı)

Bağlantılar: Video, Slaytlar

Telepresasyon cihazının sürüş arayüzünü test etmek zor. Gerçek dünyada çalışır, insanlar ve nesnelerle etkileşime girer, ancak kontrollü bir ortamda test edilmelidir. Gerçekçi uzaktan sürüş ortamı oluşturmak için çalışırken, aynı anda cihazınızın konumunu ve konumunu göremediğiniz zaman bunu nasıl doğrulayabilirsiniz? Yenilikçi bir çözüm sunacağım.

Cüzdanınızda neler var?

Hima Mandali (Capital One)

Bağlantılar: Video, Slaytlar

Capital One, 70 milyondan fazla hesabı ile ABD'deki en büyük kredi kartı şirketlerinden biridir. Capital One'da, müşterilerimize muhteşem dijital deneyimler sağlayan birçok havalı ürün geliştiriyoruz. Mobil cihazlar müşterilerimiz için tercih edilen kanal haline geldiğinden, bu konuşmada mobil web uygulamasının test otomasyonu sorununu nasıl çözdüğümüze ve daha hızlı bir yazılım teslimatı ardışık düzenine girmek için neler yaptığımıza odaklanacağız. Ayrıca, sorunlarımızı gidermek için kullandığımız açık kaynaklı araçları ve açık kaynaklı gösterge tablosunu paylaşacağız.

Yapılacak testleri tahmin etmek için test çalıştırma otomasyonu istatistiklerini kullanma

Boris Prikhodky (Unity Teknolojileri)

Bağlantılar: Video, Slaytlar

Testler, uygulama geliştirme süreçlerinin önemli bir parçası haline gelmiştir. Ancak bir kurtarma görevlisi günlük yaşamda performans sorunu haline geldiğinde yapılması gerekenler. Burada, test yapılandırmasının çalışması için 3-6 saatlik bekleme sürelerinde neler yaptığımıza dair deneyimimizi paylaşıyoruz. Bu konuşmada basit ama güçlü bir yaklaşım sunuldu. Bu yaklaşım, derleme ve test çiftliğinde hiç bitmeyen yeşil testleri yürütme açısından değerli zaman tasarrufu sağlar. Süreci iyileştirmenin olası yolları da ele alınmaktadır.

Windows ve Windows Phone için Selenium tabanlı test otomasyonu

Nikolai Abalov (2gis)

Bağlantılar: Video, Slaytlar

Web uygulamalarının test otomasyonu için Selenyum vardır. iOS ve Android'deki mobil uygulamalar için Appium mevcuttur. Ancak Windows Masaüstü ve Windows Phone/Mobil için kendi Selenium tabanlı çözümümüzü bulmamız gerekiyordu. Bu nedenle Winium oluşturuldu. Winium, Windows Masaüstü ve Windows Phone/Mobil uygulamalarının test otomasyonu için açık kaynaklı bir çözümdür. Selenyum tabanlı Winium, Selenyum veya Appium'u halihazırda bildiğiniz otomasyon ihtiyaçlarınız için kullanmaya kolayca başlayabilmeniz için mevcut selenium altyapınıza entegre edilebiliyor. Konuşmada, Winium'u oluşturan ve Winium.Desktop ile Winium.Mobile'ın nasıl çalıştığını gösteren projeler sunacağım.

Testlerin Sıra Dışı Tarafı

Brian Vanpee (Google)

Bağlantılar: Video, Slaytlar

Her hata eşit değildir. Bazen kullandığımız programlama dillerindeki ilginç hatalar suçlanır ve bunları bulmak çoğu zaman en iyi programcıların ve test kullanıcılarının bile önüne geçer. Her gün kullandığımız pek çok dilden özenle seçilmiş örnekler göstererek testin ilginç bir yönünü incelerken bize katılın. Son olarak size C, Java, Objective-C, PHP gibi dillerde bulunan ve herkesin en sevdiği JavaScript olan bir dizi tuhaf örnek sunarken ilginç bir soru sormayı deneyeceğiz.

Mobil Test Ortamı Oluşturmak İçin ML Algoritması

Rajkumar Bhojan (Wipro teknolojileri)

Bağlantılar: Video, Slaytlar

Mobil bilgi işlem teknolojisinin hızla gelişmesiyle, mobil cihazlarda mobil uygulama testine yönelik önemli bir talep görülebilir. Mobil Cihaz Yönetimi, mobil uygulama testinde hayati bir rol oynamaktadır ve Mobil Cihaz Yönetimi'ndeki zorlukları anlamak, bunları çözmek kadar önemlidir. Cihaza özel sorunlardan kaçınmak için test otomasyonu geliştiricilerin uygulamalarını çok sayıda cihazda test etmeleri gerekir. Bu da maliyetli ve verimsizdir. Bu konuşmada, makine öğrenimi algoritmasının mobil test ortamını kurmak için doğru cihaz grubunu nasıl tespit edebileceğini gösteriyoruz.

"Beni duyabiliyor musunuz?" - Ses Kalitesi Testi Devam Ediyor

Alexander Brauckman ve Dan Hislop (Citrix)

Bağlantılar: Video, Slaytlar

IATF: Yeni bir Otomatik Platformlar Arası ve Çoklu Cihaz API Test Çerçevesi

Yanbin Zhang (Intel)

Bağlantılar: Video, Slaytlar

Intel, WebRTC teknolojisini benimsemeyi kolaylaştırmak ve yeni uygulamalar geliştirip bu uygulamaları oluşturmak için geniş ölçekte kullanılabilir hale getirmek amacıyla, uçtan uca WebRTC çözümü olan WebRTC için®® Collaboration Suite'i geliştirdi. Intel şu anda tüm dünyada WebRTC için giderek büyüyen bir Intel® Collaboration Suite ekosistemi oluşturmaktadır. İşbirliği; eğitim, tıp, sektör bulutu, sosyal medya üzerinden online yayın, video konferans ve giyilebilir cihazlar vb. dahil olmak üzere çeşitli alanları kapsar. SDK API'ler için desteklenen sayısının hızla artması, platformlar arası uyumluluk ve entegrasyon testi çalışmalarının önemli ölçüde artmasını sağlar. Farklı platformlardaki bu çeşitli SDK'larda birlikte çalışabilirliğin otomatik olarak test edilmesi büyük bir soruna dönüşüyor. Bu konuşmada, Otomatik Platformlar Arası ve Çoklu Cihaz API Testi Çerçevesi'ni (IATF) sunacağız. Farklı platformlarda iletişim gerektiren tüm platformlar ve cihazlar arası SDK testleri için kullanılabilir.

Yazılım testlerinde Resmi Kavram Analizi'ni kullanma

Fedor Bendi (Yandex/NRU HSE)

Bağlantılar: Video, Slaytlar

Resmi Kavram Analizi bize, açıklamaları olan bir dizi nesne üzerinde resmî ontolojiler oluşturmaya yarayan bir araç kutusu sağlar (özellikler kümesi olarak ifade edilir). Bu cebir teorisi 1984 yılında kullanıma sunuldu ve şu anda çok çeşitli veri madenciliği görevleri için kullanılıyor. Bu konuşma, özellikle yazılım testleri için yararlı olabilecek tekniklere odaklanmaktadır: uygun test raporları ve yarı otomatik test durumu türeti için resmi ontolojinin kullanılması.

Kesintisiz Entegrasyondaki Flaky Testleri: Google'da Geçerli Uygulama ve Gelecekteki Yol Tarifi

John Micco (Google)

ve

Atif Memon (Maryland Üniversitesi, College Park)

Bağlantılar: Video, Slaytlar

Google, devasa sürekli entegrasyon sistemimizde sürekli olarak yürüttüğümüz muazzam bir test kitaplığına sahiptir. Bu verileri incelediğimizde, güvenilir olmayan testlerin farklı boyutlardaki çok sayıda israfa neden olduğunu fark ettik. Sistemimizde gördüğümüz kusursuzluk düzeyini algılama, algılama ve hafifletme kabiliyetimizi geliştirmek için çalışıyoruz.

Geliştirici Deneyimi, FTW!

Niranjan Tulpule (Google)

Bağlantılar: Video, Slaytlar

Docker Tabanlı Coğrafi Dağılım Testi Çiftliği - Intel Android Programı'nda Test Altyapısı Uygulaması

Jerry Yu (Intel) ve Guobing Chen (Intel)

Bağlantılar: Video, Slaytlar

OpenHTF - Açık Kaynak Donanım Test Çerçevesi

Joe Ethier (Google) ve John Hawley (Google)

Bağlantılar: Video, Slaytlar

Test Oluşturma İşlemi, Döngülerin Etkilerini Tespit Etmeye Yönlendirildi

Monika Dhok (Hindistan Bilim Enstitüsü)

Bağlantılar: Video, Slaytlar

Fazladan döngü geçişinin, çoğu java kitaplığında performans hatası kaynağı olarak tanımlı olduğu görülüyor. Bu sayede, bu performans hatalarını otomatik olarak algılayacak statik ve dinamik analiz teknikleri geliştirildi. Bununla birlikte, dinamik analizlerin etkinliği analiz edilen giriş testlerine bağlı olsa da statik analizler, bu sorunların varlığını otomatik olarak doğrulama, düzeltmeleri doğrulama ve gelecekteki sürümlerde regresyonlardan kaçınma konusunda daha az etkilidir. Java kitaplıklarındaki döngü verimsizliklerini tespit edecek testlerin otomatik olarak oluşturulması için yeni bir yaklaşım öneriyoruz. Bu konuşma, bu çalışmaya kısa bir genel bakış sağlar.

Hız İhtiyacı - 3 Saatten 3 Dakikaya Otomasyon Testlerini Hızlandırın

Emanuil Slavov (Komfo Inc)

Bağlantılar: Video, Slaytlar

Tüm üst düzey otomatik testler günümüzün hızlı tempolu ve bire bir işaretli ortamında yavaştır. Bu, odadaki herkesin görmezden geldiği bir fildir. Hem de iyi bir nedenden dolayı. Hızlı, güvenilir ve yararlı otomatik testlere ulaşmak zor bir iştir. Ancak seçeneğiniz yok. Yavaş otomatik testlerle müşterilerinize daha hızlı bir şekilde teslim edersiniz. Komfo'da her gece 3 saatten uzun süren testler yapıyorduk. Yürütme süresi sınırsız şekilde artmaya devam etti. Testler kararsızdı ve geri bildirim döngüsü olarak kullanılamaz hale geldi. Testler bir noktada art arda 20 günden uzun bir süre boyunca başarısız oluyordu. Regresyon hataları, üretimde görünmeye başladı. Bu çılgınlığı durdurmaya karar verdik ve ciddi bir çaba ve özveriden sonra şu anda aynı testler 3 dakikadan kısa bir süre çalıştı. Bu, 60 kat daha hızlı testlere nasıl ulaştığımızı sürekli olarak anlatan bir hikaye.

Kod Kapsamı, Gerçek Dünyada Test Paketinin Etkisini Güçlü Bir Öngörüyor

Rahul Gopinath (Oregon Eyalet Üniversitesi)

Bağlantılar: Video, Slaytlar

ClusterRunner: Yatay ölçeklendirme ile hızlı test geri bildirimi gerçekleştirme

Taejun Lee (Box Inc) ve Joseph Harrington (Box Inc)

Bağlantılar: Video, Slaytlar

Box, her kayıtta yaklaşık otuz saatlik birim ve entegrasyon testleri yürütür. Paralel çalıştırma işlemini, açık kaynak test dağıtım platformu olan ClusterRunner'ı kullanarak 17 dakikadan kısa bir süre içinde paralel yaparız. Box neden bu kadar çok test yapıyor? ClusterRunner nasıl çalışır? ClusterRunner'ı kendi testleriniz için kurmak kolay mı? (Spoiler: Evet.) ClusterRunner, hem tek bir ana makinedeki testleri paralel hale getirip hem de birçok ana makineye dağıtım yaparak size inanılmaz hızlı test geri bildirimi sunar. Box'un Üretkenlik Mühendisliği ekibi tarafından geliştirilen ClusterRunner, dahili olarak 17 dakika içinde 30 saatten uzun test paketi yürütüyor ve bunu her gün yüzlerce kez yapıyoruz. ClusterRunner açık kaynak ve dilden bağımsızdır. Böylece kendi projenizde kolayca kullanabilirsiniz. ClusterRunner'ı uzun test geri bildirim gecikmeleri veya az test edilmiş kodlarla mücadele eden mühendislik ekipleri için oluşturduk. Baştan aşağıya kullanımı kolay olacak ve mevcut CI sisteminize entegre edebilecek şekilde tasarlandı. Testlerinizin ne kadar sürdüğünü öğrenir ve mümkün olan en hızlı şekilde geri bildirim sağlamak için gelecekteki çalışmaları buna göre programlar. Bileşenlerinin uyumlu ve genişletilebilir olmasını sağlayan uyumlu REST API aracılığıyla iletişim kurması.

Birden Çok Mobil Cihaz ve Hizmet ile Entegrasyon Testi

Alexander Dorokhine (Google) ve Ang Li (Google)

Bağlantılar: Video, Slaytlar

Mobly, sosyal uygulamalar gibi birden fazla cihaz arasında etkileşim gerektiren ürünleri veya kablosuz bağlantı gibi test ortamını kontrol etmeyi gerektiren testler için geliştirilmiş, Google tarafından geliştirilmiş açık kaynaklı bir çerçevedir. Farklı cihazlarda test yapmanın tek cihaz testinden farkını, birden fazla cihaz arasında senkronizasyon ve kod akışı gibi benzersiz sorunlarını ve Mobly'nin bu sorunları nasıl çözdüğünü konuşacağız.

Ölçek ve Değer: BBC'de Test Otomasyonu

Jitesh Gosai (BBC) ve David Buckhurst (BBC)

Bağlantılar: Video, Slaytlar

Mobil ve TV uygulamalarımızın testlerini ölçeklendirmek için kurum içi bir açık kaynak cihaz bulutu oluşturduk. Ancak kısa süre içinde otomasyona yaklaşımımızı yeniden değerlendirmemizi ve ölçek ile değer arasında doğru dengeyi bulmamızı sağlayan bir canavara dönüştü. Odaklanılan otomasyon ve ortak sahiplik sayesinde cihaz üzerinde yapılan testlerin sorunlarını nasıl çözdüğümüzü öğrenin. Ayrıca kendi dahili cihaz bulutunuzu nasıl oluşturacağınızı ve açık kaynak araçlarımızdan nasıl yararlanacağınızı keşfedin.

LibFuzzer'ı kullanarak C++ kitaplıklarında hataları bulma

Kostya Serebryany (Google)

Bağlantılar: Video, Slaytlar

Bir sunucuyu kilitlenmeyi nasıl öğrendim?

Jonathan Abrahams (MongoDB)

Bağlantılar: Video, Slaytlar

Çeşitli sistem kilitlenme senaryolarında başarılı olabilmek için MongoDB sunucusunun dayanıklılığını nasıl test ettiğimizi öğrenin. Her tür işletim sistemi ve ana makine yapılandırmasından (fiziksel veya sanal) oluşan bir sunucuyu kilitlenmeyi nasıl otomatikleştirebildiğimizi öğrenin.