Selenium dapatkan konsol log python firefox

Fungsionalitas itu dalam status beta. Bagi saya, IE melempar kesalahan karena tidak menangani metode itu, Chrome mengembalikan log kosong, tetapi Firefox berfungsi. Saya tidak memiliki paket terbaru sekalipun

Jika Anda ingin melakukan pencarian string, Anda harus menggunakan Convert To String terlebih dahulu atau serupa, karena get_log mengembalikan daftar dict

Inilah cara Anda bisa mendapatkan log dari kata kunci pengguna. Jika Anda ingin melakukannya dengan Python, ada contoh kode serupa di postingan lama

Log konsol browser, bersama dengan debug juga membantu kami menangkap kesalahan yang terjadi saat menggunakan aplikasi web. Pengembang Anda akan berterima kasih saat Anda menyertakan kesalahan konsol dalam laporan bug Anda. Sebagai bagian dari menjalankan otomatisasi GUI Anda, merupakan kebiasaan yang baik untuk memeriksa dan melaporkan kesalahan yang ada di konsol browser. Dalam posting ini, saya ingin membagikan pembelajaran saya tentang cara menggunakan Selenium untuk membaca log browser sehingga dapat membantu orang lain yang mencari info ini.

Kami akan melakukan langkah-langkah berikut di pos ini
1. Pelajari metode Selenium API untuk mendapatkan log browser
2. Dapatkan log konsol
3. Periksa contoh pesan log
4. Filter log berdasarkan jenis pesan
5. Gabungkan semuanya

1. Selenium API untuk mendapatkan log konsol
Selenium menyediakan metode get_log[log_type]_ yang membantu Anda mendapatkan log untuk jenis log tertentu. Jadi untuk mendapatkan log konsol browser, kita perlu menggunakan tipe log sebagai browser

driver.get_log[‘browser’]

sopir. get_log['peramban']

2. Dapatkan log konsol
Anda dapat menggunakan metode di bawah ini untuk mendapatkan log konsol

def get_browser_console_log[self]:
        "Get the browser console log"
        try:
            log = self.driver.get_log['browser']
            return log
        except Exception,e:
            print["Exception when reading Browser Console log"]
            print[str[e]]
_

def get_browser_console_log[self]. Coba "Dapatkan log konsol browser". log = diri sendiri. sopir. get_log['browser'] mengembalikan log kecuali Pengecualian,e. print["Pengecualian saat membaca log Konsol Peramban"] print[str[e]]

3. Contoh pesan log
Contoh pesan log akan terlihat seperti ini
[{u'source': u'javascript', u'message': u'//qxf2.com/selenium-tutorial-main 303:9 Uncaught TypeError: $[...] is not a function', u'timestamp': 1475757107472L, u'level': u'SEVERE'}]

4. Filter log berdasarkan jenis pesan
Anda ingin memfilter pesan log berdasarkan level dan hanya mendapatkan pesan dari kumpulan hasil. Anda dapat menggunakan potongan kode berikut untuk melakukan ini

log = self.read_browser_console_log[]
log_errors = []
for entry in log:
                if entry['level']=='SEVERE':
                    log_errors.append[entry['message']]

log = diri sendiri. read_browser_console_log[] log_errors = [] untuk entri di log. jika entri['level']=='SEVERE'. log_errors. tambahkan[masukan['pesan']]

5. Menyatukan semuanya
Saya telah membuat dua metode get_browser_console_log[] dan check_errors_console_log[] yang akan membantu Anda mendapatkan log konsol browser dan mencetaknya

def check_errors_console_log[self,url]:
        "Function to get the browser's console log errors"
        self.driver.get[url]
        current_console_log_errors = []
        #As IE driver does not support retrieval of any logs,
        #we are bypassing the get_browser_console_log[] method
        if "ie" not in str[self.driver]: 
            log_errors = []
            new_errors = []
            log = self.get_browser_console_log[]
            print "Console Log: ",log
            for entry in log:
                if entry['level']=='SEVERE':
                    log_errors.append[entry['message']]
 
            if current_console_log_errors != log_errors:
                #Find the difference
                new_errors = list[set[log_errors] - set[current_console_log_errors]]
                #Set current_console_log_errors = log_errors
                current_console_log_errors = log_errors
 
            if len[new_errors]>0:
                print["\nBrowser console error on url: %s\nConsole error[s]:%s"%[self.driver.current_url,'\n----'.join[new_errors]]]
 
 
    def get_browser_console_log[self]:
        "Get the browser console log"
        try:
            log = self.driver.get_log['browser']
            return log
        except Exception,e:
            print["Exception when reading Browser Console log"]
            print[str[e]]

def check_errors_console_log[self,url]. "Fungsi untuk mendapatkan kesalahan log konsol browser" sendiri. sopir. get[url] current_console_log_errors = [] #Karena driver IE tidak mendukung pengambilan log apa pun, #kami melewati metode get_browser_console_log[] jika "ie" tidak ada di str[self. sopir]. log_errors = [] new_errors = [] log = mandiri. get_browser_console_log[] print "Log Konsol. ", log untuk masuk di log. jika entri['level']=='SEVERE'. log_errors. append[entry['message']] jika current_console_log_errors. = log_error. #Temukan perbedaan new_errors = daftar[set[log_errors] - set[current_console_log_errors]] #Set current_console_log_errors = log_errors current_console_log_errors = log_errors if len[new_errors]>0. print["\nKesalahan konsol browser pada url. %s\nKesalahan konsol. %s"%[diri. sopir. current_url,'\n----'. gabung[new_errors]]] def get_browser_console_log[self]. Coba "Dapatkan log konsol browser". log = diri sendiri. sopir. get_log['browser'] mengembalikan log kecuali Pengecualian,e. print["Pengecualian saat membaca log Konsol Peramban"] print[str[e]]

Di Qxf2, kami mengonversi kode di atas menjadi dekorator dan menggunakannya dalam kerangka kerja kami. Kami tidak akan dapat membagikan kode itu sampai kami mendapatkan waktu untuk menulis tentang kerangka kerja kami. Tetapi jika Anda cukup nyaman dengan Python, kami sarankan Anda mengubah metode ini menjadi dekorator

Catatan. Driver Internet Explorer tidak mendukung pengambilan log dalam bentuk apa pun

Dan sekarang kesalahan konsol browser juga tidak terhindar. ]. Nikmati pengujian

Jika Anda menyukai apa yang Anda baca, ketahui lebih banyak tentang Qxf2

Avinash Shetty

Saya seorang penguji perangkat lunak dengan pengalaman lebih dari 14 tahun dalam pengujian perangkat lunak. Saat ini, saya bekerja di Qxf2 Services Bangalore. Sebagai siswa pendekatan berbasis konteks untuk pengujian perangkat lunak, saya merasa ada banyak hal yang harus dipelajari di luar sana yang membuat saya sangat bersemangat. Pekerjaan saya telah membantu saya mendapatkan pengalaman yang baik di berbagai bidang pengujian seperti pengujian CRM, Web, Seluler, dan Basis Data. Saya memiliki pengetahuan yang baik tentang membuat skrip pengujian menggunakan alat Otomasi seperti Selenium dan Appium menggunakan Java dan Python. Selain pengujian, saya adalah "Fanatik Olahraga" dan suka menonton dan bermain olahraga

Bagaimana cara menemukan log konsol di Firefox?

Anda dapat membuka Konsol Peramban dengan salah satu dari dua cara. .
dari menu. pilih "Konsol Peramban" dari submenu Alat Peramban di Menu Firefox [atau menu Alat jika Anda menampilkan bilah menu atau menggunakan macOS]
dari keyboard. tekan Ctrl + Shift + J [atau Cmd + Shift + J di Mac]

Bagaimana cara mengunduh log konsol di Firefox?

Langkah-langkah untuk mendapatkan log konsol cukup mirip di sebagian besar browser populer, tetapi mungkin ada sedikit perbedaan. .
Langkah 1. Buka alat Pengembang Web. .
Langkah 2. Buka Konsol Web. .
Langkah 3. Simpan log

Bagaimana cara menggunakan Python Selenium dengan Firefox?

Agar Firefox berfungsi dengan Python selenium, Anda perlu memasang geckodriver . Driver tokek akan memulai browser firefox asli dan mendukung Javascript. Lihatlah kode selenium firefox. Pertama impor webdriver, lalu jalankan firefox.

Bagaimana cara masuk ke Python menggunakan selenium?

Langkah-langkah berikut akan dilakukan menggunakan Python dan Selenium. .
Impor Perpustakaan
Buat Variabel untuk Kredensial Masuk
Instal Driver Web
Luncurkan Browser dan Buka URL
Masukkan Kredensial Masuk dan Masuk
Verifikasi Status Masuk

Bài mới nhất

Chủ Đề