김빵디

Python+Selenium Unittest 단위테스트 / Css Selector값에 대한 텍스트 길이 확인해보기 본문

외로운 싸움/Selenium

Python+Selenium Unittest 단위테스트 / Css Selector값에 대한 텍스트 길이 확인해보기

김빵디 2022. 5. 24. 17:41
728x90

1. 리그오브레전드를 검색한다.

2. 검색에 나온 특정 Css Selector의 텍스트길이가 맞는지 확인한다.

 

css selector로 특정 엘리먼트를 끌고와서 텍스트값으로 변환시킨다.

변환시킨 텍스트값을 len()함수를 이용해 글자수를 추출한 후에

assertEqual 함수를 이용해 9글자가 맞는지 확인한다.

 


from asyncio.log import logger
from cgitb import text
from ctypes.wintypes import MSG
import logging
from pydoc import classname
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
import unittest
from bs4 import BeautifulSoup as bs
import pandas as pd
import requests as rq



#def execution_search():
#    pass

#첫번째 Selenium Test 만들기
class one_tc(unittest.TestCase):
    

    def setUp(self): #전제조건(테스트 시작시 초기화된 값 정리)
        self.driver = webdriver.Firefox()
        self.driver.implicitly_wait(30)
        self.driver.maximize_window()
        
        self.driver.get("http://www.google.com")
        

    def test_search_by_test(self):
        self.search_field = self.driver.find_element(By.NAME, "q")
        self.search_field_key = self.search_field.send_keys('리그 오브 레전드')
        self.search_field.submit()
        
        css_ele = self.driver.find_element(By.CSS_SELECTOR, '.LC20lb.MBeuO.DKV0Md')
        cnt_text = cnt_text = []
        css_text = css_ele.text
        print(f'텍스트:::{css_text}')
        
        cnt_text = len(css_text)
        print(f'len text:::{cnt_text}')
    
        result = self.assertEqual(int(9), cnt_text)
        print(f'결과:::{result}')
        
        
        
        #self.assertEqual(text1, text2)
                
        #execution_search()
        #메소드 단순 실행여부 판단

    
    #@classmethod
    def tearDown(self): #코드 해제
        self.driver.quit()   

    
if __name__ == '__main__':
    unittest.main()
    #실제 코드를 통해 테스트 수행


print로 중간중간 값이 잘 들어갔는지 확인해봤다!

 

assertEqual 관련해서는 사용법에 대해 ▼아래에서 확인해보자
https://www.tutorialspoint.com/unittest_framework/unittest_framework_assertion.htm

 

728x90