OpenTest adalah alat otomasi uji fungsional sumber terbuka dan open source untuk aplikasi web, aplikasi seluler, dan API.
Kami tahu ada banyak barang di luar sana, baik produk komersial mapan dan proyek open source. Kami mencari alat yang tepat untuk waktu yang lama, dan mencoba beberapa dari mereka, dengan hasil yang tidak sepenuhnya memenuhi harapan kami. Kami sedang mencari alat yang dapat kami standar, yang akan memungkinkan kami untuk menyatukan upaya otomatisasi uji di berbagai tim internal dan eksternal dengan berbagai ukuran, keahlian, anggaran, dan lokasi geografis. Alat ini harus menggabungkan praktik terbaik terbaru dalam industri dan, idealnya, dirilis di bawah lisensi open source sehingga kami dapat menghilangkan proses yang panjang dan mengurangi biaya. Mengingat pertimbangan ini, serta persyaratan lainnya, kami memutuskan bahwa membangun dari awal adalah pilihan yang bertanggung jawab.
OpenTest bertujuan untuk menawarkan semua fitur dari alat otomatisasi uji modern sambil mengikuti serangkaian prinsip yang sehat. Kami bertujuan untuk mendemokratisasi otomatisasi uji fungsional dan menciptakan komunitas hebat yang diberdayakan untuk membangunnya sendiri. Sementara tidak ada dalam hidup yang sempurna dan tidak ada perangkat lunak yang lengkap, kami berjanji bahwa setiap fitur yang masuk ke produk ini dipikirkan secara menyeluruh dan diimplementasikan dengan hati -hati untuk mencapai keseimbangan terbaik antara daya dan fleksibilitas di satu sisi, dan kegunaan di sisi lain.
Pengujian Web , dengan Selenium. Semua browser didukung. Jalankan tes di mesin lokal Anda atau menggunakan penyedia cloud.
Pengujian seluler untuk aplikasi Android dan iOS dengan Appium. Jalankan tes di mesin lokal Anda atau menggunakan penyedia cloud.
Pengujian API , dibangun di atas Perpustakaan Apache HttpClient.
Pengujian yang digerakkan oleh kata kunci . Rakit tes Anda menggunakan blok bangunan tingkat lebih tinggi yang menyembunyikan kompleksitas teknologi yang mendasarinya dan memungkinkan Anda mengekspresikan diri dengan cara yang ringkas dan mudah dibaca.
Dukungan Scripting . Tutupi skenario uji kompleks menggunakan kode JavaScript, tertanam secara organik dalam tes yang digerakkan oleh kata kunci Anda untuk menjaga hal-hal tetap bersih dan mudah dibaca.
Pengujian paralel . Jumlah sesi uji yang dapat Anda jalankan secara paralel hanya dibatasi oleh sumber daya mesin yang Anda jalankan (tetapi selalu ada lebih banyak mesin di cloud).
Pengujian terdistribusi . Tulis tes yang dijalankan dengan mulus di beberapa mesin, jaringan, dan teknologi. Tulis tes integrasi yang menjangkau seluler, web, API, dan apa pun di antaranya.
Pengujian berbasis data . Jalankan tes beberapa kali, selama satu set catatan data yang dikelola dalam file data terpisah.
Dapat diperluas . Integrasi dengan teknologi apa pun dengan membuat tindakan pengujian khusus Anda sendiri (kata kunci).
Sumber Kontrol ramah berdasarkan desain. Bekerja dengan percaya diri, mengetahui bahwa git mendukung Anda. Sempurna untuk tim besar atau terdistribusi secara geografis.
Lingkungan . Bangun tes Anda sekali dan jalankan melawan beberapa lingkungan atau menggunakan set data uji yang berbeda.
Bekerja dengan baik dengan orang lain . Gunakan HTTP API sederhana untuk mengendalikan sesi uji awal dan pemantauan, mengumpulkan hasil tes, dll.
Cross-platform , berjalan di macOS, Windows dan Linux.
(Dan kami harus melewatkan banyak fitur yang sangat keren untuk menjaga brief ini)
Prasyarat: node.js 8 atau lebih; Java Runtime 8 atau lebih besar.
Instal dari NPM:
npm install opentest -gTutorial Video: https://getopentest.org/docs/installation.html (direkam di windows)
Buat direktori bernama "opentest" di direktori home Anda untuk digunakan sebagai taman bermain untuk panduan ini, dan cd ke dalam direktori itu.
cd ~
mkdir opentest
cd opentest Catatan | Di Windows, gunakan md bukan mkdir . |
Jalankan perintah di bawah ini
opentest quick-startAnda sekarang harus memiliki file dan direktori ini di jalur Anda saat ini:
server
└── server.yaml
actor1
└── actor.yaml
test-repo
├── macros
│ └── ...
├── scripts
│ └── ...
├── templates
│ └── ...
└── tests
└── ... Direktori server dan actor1 akan digunakan sebagai direktori kerja untuk server open dan aktor tes, masing -masing. Direktori test-repo adalah repositori uji sampel yang menunjukkan beberapa fitur dasar OpenTest.
Buka jendela terminal baru, cd ke direktori kerja server dan mulai server openTest:
cd ~/opentest/server
opentest serverOpenTest Server (alias server sinkronisasi) adalah aplikasi Node.js yang fungsi utama adalah untuk mengatur eksekusi tes dan untuk menyediakan UI berbasis web.
Buka jendela terminal baru, cd ke direktori kerja aktor dan mulai aktor uji:
cd ~/opentest/actor1
opentest actorTest Actor adalah aplikasi Java yang berjalan pada sistem yang diuji dan menjalankan langkah -langkah tes seperti yang diperintahkan oleh server sinkronisasi.
Buka browser web dan navigasikan ke http: // localhost: 3000.
Dari menu, pilih Sesi> Buat sesi dari template . Pilih tes Mulai Cepat Template dan klik Sesi Buat . Tunggu beberapa detik dan segarkan browser Anda untuk melihat hasil sesi tes.
Ada tiga komponen untuk opentest:
Sync Server , aplikasi Node.js yang terutama melakukan tiga fungsi:
Mengatur eksekusi tes.
Mengekspos UI Web yang dapat digunakan untuk membuat sesi tes, memeriksa hasil tes, dll.
Mengekspos API ramah yang dapat dimanfaatkan untuk tujuan yang kira -kira sama dengan UI.
Aktor tes , aplikasi Java yang bertanggung jawab dengan mengeksekusi tes, seperti yang diperintahkan oleh server sinkronisasi. Mungkin ada beberapa aktor yang berpartisipasi dalam tes yang sama dan aktor dapat digunakan pada mesin apa pun di jaringan apa pun, termasuk di cloud. Satu -satunya persyaratan adalah bahwa aktor uji dapat berkomunikasi dengan HTTP API yang diekspos oleh server sinkronisasi. Tidak ada persyaratan bahwa server sinkronisasi dapat memulai komunikasi dengan aktor, yang sangat menyederhanakan pengaturan dalam skenario di mana aktor berjalan di lab yang ada di belakang firewall atau di jaringan yang tidak dapat diakses dari mesin yang menjalankan server sinkronisasi.
Repositori uji , direktori dengan struktur yang telah ditentukan sebelumnya, di bawah kontrol sumber, berisi berbagai aset uji (file uji, skrip, templat sesi tes, dll.).

OpenTest adalah perangkat lunak open source yang dirilis di bawah lisensi MIT.
Kecuali jika Anda secara eksplisit menyatakan sebaliknya, setiap kontribusi yang secara sengaja diserahkan oleh Anda untuk dimasukkan dalam repositori ini harus dilisensikan seperti di atas, tanpa syarat atau ketentuan tambahan.
Untuk informasi lebih lanjut, silakan lihat dokumen Pedoman yang berkontribusi.
Terima kasih kepada BrowserStack untuk menyediakan akun open-source untuk pengujian & pengembangan!
Platform Pengujian Cross-Browser dan Open Source ❤️ Disediakan oleh Saus Lab