class Public_Calendar_Controller: def __init__(self, driver, target_url, calendar_title): self.chrome = driver self.target_url = target_url self.admin_xpath_list_func = Admin_Menu_Path() self.basic_func = Basic() self.driver_action_func = Driver_Action(driver) self.user_register_func = User_Register_Setting(driver) self.calendar_title = calendar_title # 管理画面のメニューのパスを返す self.admin_xpath_lists = self.admin_xpath_list_func.get_admin_menu_xpath( ) # 管理画面メニュー内の新規追加や編集などのパーツのパスを返す。 self.admin_list_parts_xpath = self.admin_xpath_list_func.get_admin_menu_list_parts_xpath( ) def start_many(self): #固定ページ一覧へ移動 self.go_to_page_list() #固定ページの中から、新規登録ページに移動する。 self.go_to_new_register_page() #新規登録のURLを取得 new_link = self.user_register_func.get_new_register_page_link() #新しくドライバーを作成 new_normal_register_driver = webdriver.Chrome( ChromeDriverManager().install()) #トップページへ移動 new_normal_register_driver.get(new_link) # 新しいブラウザでインスタンス作成 normal_register_func = Test_User_Normal_Register( new_normal_register_driver) # ユーザー情報を入れて、新しくユーザーを登録 normal_register_func.nomarl_put_user_info_to_form() #インスタンス作成 public_calendar_func = Public_Calendar(new_normal_register_driver) #カレンダーページへ移動 public_calendar_func.go_to_calendar_page() for calendar_register_list_name in self.calendar_title: print(calendar_register_list_name) #カレンダーページの要素をクリックする。 public_calendar_func.click_calendar(calendar_register_list_name) #カレンダーページ登録ページへ移動 public_calendar_func.go_to_calendar_register_page() #カレンダー情報入力 public_calendar_func.put_calendar_register_info() #カレンダー情報編集 public_calendar_func.click_calendar(calendar_register_list_name) public_calendar_func.go_to_calendar_edit_page() public_calendar_func.put_calendar_edit_info() #カレンダーページへ移動 public_calendar_func.go_to_calendar_page() self.driver_action_func.quit(new_normal_register_driver) self.go_to_admin_top_page() def start(self): #固定ページ一覧へ移動 self.go_to_page_list() #固定ページの中から、新規登録ページに移動する。 self.go_to_new_register_page() #新規登録のURLを取得 new_link = self.user_register_func.get_new_register_page_link() #新しくドライバーを作成 new_normal_register_driver = webdriver.Chrome( ChromeDriverManager().install()) #トップページへ移動 new_normal_register_driver.get(new_link) # 新しいブラウザでインスタンス作成 normal_register_func = Test_User_Normal_Register( new_normal_register_driver) # ユーザー情報を入れて、新しくユーザーを登録 normal_register_func.nomarl_put_user_info_to_form() #インスタンス作成 public_calendar_func = Public_Calendar(new_normal_register_driver) #カレンダーページへ移動 public_calendar_func.go_to_calendar_page() #カレンダーページの要素をクリックする。 public_calendar_func.click_calendar(self.calendar_title) #カレンダーページ登録ページへ移動 public_calendar_func.go_to_calendar_register_page() #カレンダー情報入力 public_calendar_func.put_calendar_register_info() #カレンダー情報編集 public_calendar_func.click_calendar(self.calendar_title) public_calendar_func.go_to_calendar_edit_page() public_calendar_func.put_calendar_edit_info() self.driver_action_func.quit(new_normal_register_driver) self.go_to_admin_top_page() def go_to_page_list(self): admin_page_path = self.admin_xpath_lists['admin_page_path'] admin_list_page_path = self.admin_xpath_lists['admin_list_page_path'] self.driver_action_func.move_admin_page(admin_page_path, admin_list_page_path) def go_to_admin_top_page(self): self.driver_action_func.move_to_page_by_link( self.chrome, self.target_url + 'wp-admin/') def go_to_new_register_page(self): admin_new_regsiter_page_path = self.admin_xpath_lists[ 'admin_new_regsiter_page_path'] self.driver_action_func.single_move_admin_page( admin_new_regsiter_page_path)
class PayPal_User_Register_Controller: def __init__(self, driver, target_url): self.chrome = driver self.target_url = target_url self.admin_xpath_list_func = Admin_Menu_Path() self.basic_func = Basic() self.driver_action_func = Driver_Action(driver) self.paypal_add_new_func = Pay_Pal_Add_New_One(driver) self.paypal_carete_page_func = Pay_Pal_Create_Page(driver) # 管理画面のメニューのパスを返す self.admin_xpath_lists = self.admin_xpath_list_func.get_admin_menu_xpath( ) # 管理画面メニュー内の新規追加や編集などのパーツのパスを返す。 self.admin_list_parts_xpath = self.admin_xpath_list_func.get_admin_menu_list_parts_xpath( ) def start(self): #PayPal設定ページに移動 self.go_to_paypal_setting_page() #PayPalボタン作成画面に移動 self.paypal_add_new_func.go_to_pay_pal_register_page() #継続課金のボタン作成 self.paypal_add_new_func.add_normal_subscription_payment() payapl_short_code = self.paypal_carete_page_func.get_new_pay_pal_short_code( ) #固定ページ一覧に移動 self.go_to_page_list() #新規追加ページへ移動 self.driver_action_func.go_to_add_new_page() #ペイパルのページを作成 self.paypal_carete_page_func.create_normal_subscription_page( payapl_short_code) #公開ボタンをクリックする。 self.driver_action_func.click_publish_btn() #ペイパルのテスト self.test_pay_pal_regsiter() #トップページへ移動 self.go_to_admin_top_page() def test_pay_pal_regsiter(self): paypal_page_link = self.driver_action_func.edit_page_link() new_paypal_register_driver = webdriver.Chrome( ChromeDriverManager().install()) new_paypal_register_driver.get(paypal_page_link) # 新しいブラウザでインスタンス作成 paypal_register_func = Test_User_Normal_Register( new_paypal_register_driver) paypal_register_func.nomarl_put_user_info_to_form() payment_register_func = Test_User_Payment_Register( new_paypal_register_driver) payment_register_func.click_register_page_pay_pal_btn() #payment_register_func.click_new_register_page_pay_pal_btn() self.driver_action_func.quit(new_paypal_register_driver) def go_to_paypal_setting_page(self): admin_guild_press_page_path = self.admin_xpath_lists[ 'admin_guild_press_page_path'] admin_guild_press_paypal_page_path = self.admin_xpath_lists[ 'admin_guild_press_paypal_page_path'] self.driver_action_func.move_admin_page( admin_guild_press_page_path, admin_guild_press_paypal_page_path) def go_to_admin_top_page(self): self.driver_action_func.move_to_page_by_link( self.chrome, self.target_url + 'wp-admin/') def go_to_page_list(self): admin_page_path = self.admin_xpath_lists['admin_page_path'] admin_list_page_path = self.admin_xpath_lists['admin_list_page_path'] self.driver_action_func.move_admin_page(admin_page_path, admin_list_page_path)
class News_Controller: def __init__(self, driver, target_url): self.chrome = driver self.target_url = target_url self.admin_xpath_list_func = Admin_Menu_Path() self.basic_func = Basic() self.driver_action_func = Driver_Action( driver ) self.admin_news_func = Admin_News( driver ) self.user_register_func = User_Register_Setting( driver ) self.paypal_add_new_func = Pay_Pal_Add_New_One( driver ) self.paypal_carete_page_func = Pay_Pal_Create_Page( driver ) # 管理画面のメニューのパスを返す self.admin_xpath_lists = self.admin_xpath_list_func.get_admin_menu_xpath() # 管理画面メニュー内の新規追加や編集などのパーツのパスを返す。 self.admin_list_parts_xpath = self.admin_xpath_list_func.get_admin_menu_list_parts_xpath() def start( self ): #固定ページ一覧に移動 self.go_page_list() #固定ページの中から、新規登録ページに移動する。 self.go_to_my_page() #ニュース一覧のショートコードをセットする self.admin_news_func.add_news_code() #レッスン詳細一覧へ移動 self.go_to_lesson_detail_page() #固定ページ一覧に移動 self.go_page_list() #固定ページの中から、新規登録ページに移動する。 self.go_to_new_register_page() #ニュースを普通の登録状態で確認 self.check_news_page_by_normal_regsiter() #トップページへ移動 self.go_to_admin_top_page() #ニュースを3つの状態にしてチェックする。 self.check_three_news_page() #トップページへ移動 self.go_to_admin_top_page() #タイトルを編集した状態のページをチェック self.check_news_page_edited_title() #トップページへ移動 self.go_to_admin_top_page() def check_news_page_edited_title( self ): #固定ページ一覧に移動 self.go_page_list() #固定ページの中から、新規登録ページに移動する。 self.go_to_my_page() #タイトルを編集した状態のショートコードページを追加 self.admin_news_func.add_test_title_news_code() #レッスン詳細一覧へ移動 self.go_to_lesson_detail_page() #固定ページ一覧に移動 self.go_page_list() #固定ページの中から、新規登録ページに移動する。 self.go_to_new_register_page() self.check_news_page_by_normal_regsiter() def check_three_news_page( self ): #固定ページ一覧に移動 self.go_page_list() #固定ページの中から、マイページに移動する。 self.go_to_my_page() #3つのニュースを表示するようにショートコードを書き換える。 self.admin_news_func.add_three_news_code() #レッスン詳細一覧へ移動 self.go_to_lesson_detail_page() #固定ページ一覧に移動 self.go_page_list() #固定ページの中から、新規登録ページに移動する。 self.go_to_new_register_page() self.check_news_page_by_normal_regsiter() def check_news_page_by_normal_regsiter(self): new_link = self.user_register_func.get_new_register_page_link() # 普通にbasicに新しく開く処理をするとなぜか、新しくひらいたクロームが落ちてしまうのでここで普通に新しく作成。 new_normal_register_driver = webdriver.Chrome(ChromeDriverManager().install()) new_normal_register_driver.get( new_link ) # 新しいブラウザでインスタンス作成 normal_register_func = Test_User_Normal_Register( new_normal_register_driver ) # ユーザー情報を入れて、新しくユーザーを登録 normal_register_func.nomarl_put_user_info_to_form() public_news_func = Public_News( new_normal_register_driver ) #マイページへ移動して表示を確認 public_news_func.go_to_my_page() self.driver_action_func.quit( new_normal_register_driver ) def go_to_paypal_setting_page(self): admin_guild_press_page_path = self.admin_xpath_lists['admin_guild_press_page_path'] admin_guild_press_paypal_page_path = self.admin_xpath_lists['admin_guild_press_paypal_page_path'] self.driver_action_func.move_admin_page( admin_guild_press_page_path, admin_guild_press_paypal_page_path ) def go_to_new_register_page( self ): admin_new_regsiter_page_path = self.admin_xpath_lists['admin_new_regsiter_page_path'] self.driver_action_func.single_move_admin_page( admin_new_regsiter_page_path ) def go_page_list( self ): admin_page_path = self.admin_xpath_lists['admin_page_path'] admin_list_page_path = self.admin_xpath_lists['admin_list_page_path'] self.driver_action_func.move_admin_page( admin_page_path, admin_list_page_path ) def go_to_lesson_over_view_page( self ): lesson_over_view_page_path = self.admin_xpath_lists['admin_guild_press_lesson_over_view_page_path'] lesson_over_view_list_page_path = self.admin_xpath_lists['admin_guild_press_lesson_over_view_list_page_path'] self.driver_action_func.move_admin_page( lesson_over_view_page_path, lesson_over_view_list_page_path ) def go_to_member_rank_page( self ): admin_guild_press_page_path = self.admin_xpath_lists['admin_guild_press_page_path'] admin_guild_press_member_rank_page_path = self.admin_xpath_lists['admin_guild_press_member_rank_page_path'] self.driver_action_func.move_admin_page( admin_guild_press_page_path, admin_guild_press_member_rank_page_path ) def go_to_admin_top_page(self): self.driver_action_func.move_to_page_by_link( self.chrome, self.target_url + 'wp-admin/' ) def go_to_lesson_detail_page( self ): admin_guild_press_lesson_detail_page_path = self.admin_xpath_lists['admin_guild_press_lesson_detail_page_path'] admin_guild_press_lesson_detail_list_page_path = self.admin_xpath_lists['admin_guild_press_lesson_detail_list_page_path'] self.driver_action_func.move_admin_page( admin_guild_press_lesson_detail_page_path, admin_guild_press_lesson_detail_list_page_path ) def go_to_my_page( self ): admin_go_to_mypage_path = self.admin_xpath_lists['admin_go_to_mypage_path'] self.driver_action_func.single_move_admin_page( admin_go_to_mypage_path )
class Member_Rank_OverView_Controller: def __init__(self, driver, target_url): self.chrome = driver self.target_url = target_url self.admin_xpath_list_func = Admin_Menu_Path() self.basic_func = Basic() self.driver_action_func = Driver_Action(driver) self.admin_member_rank_func = Admin_Member_Rank(driver) self.user_register_func = User_Register_Setting(driver) self.paypal_add_new_func = Pay_Pal_Add_New_One(driver) self.paypal_carete_page_func = Pay_Pal_Create_Page(driver) # 管理画面のメニューのパスを返す self.admin_xpath_lists = self.admin_xpath_list_func.get_admin_menu_xpath( ) # 管理画面メニュー内の新規追加や編集などのパーツのパスを返す。 self.admin_list_parts_xpath = self.admin_xpath_list_func.get_admin_menu_list_parts_xpath( ) def start(self): #固定ページ一覧に移動 self.go_to_member_rank_page() #会員ランクを設定していく self.admin_member_rank_func.add_admin_rank() ##レッスン概要ページにブロックを設定する。 #GuildPressレッスン一覧新規追加ページへ移動 self.go_to_lesson_over_view_page() #会員ランクのブロックを追加していく。 self.admin_member_rank_func.add_block_setting_overview_page() ##別のタブを立ち上げて、普通にユーザー登録をして、表示を確認する。 self.check_block_page_by_normal_regsiter() ##今度はゴールド会員として登録して表示をチェックするためにゴールド会員のページを作成 self.check_block_page_by_paypal_regsiter() #トップページへ戻る self.go_to_admin_top_page() ##一連のチェックを終えたら、ページのブロックを解除する。 self.reset_block_page() #トップページへ戻る self.go_to_admin_top_page() def check_block_page_by_paypal_regsiter(self): ##今度はゴールド会員として登録して表示をチェックするためにゴールド会員のページを作成 self.go_to_paypal_setting_page() #新しくPayPalの設定を作成 self.paypal_add_new_func.go_to_pay_pal_register_page() self.paypal_add_new_func.add_member_subscription_payment() payapl_short_code = self.paypal_carete_page_func.get_new_pay_pal_short_code( ) #固定ページ一覧に移動 self.go_page_list() self.driver_action_func.go_to_add_new_page() self.paypal_carete_page_func.create_member_subscription_page( payapl_short_code) #公開ボタンをクリックする。 self.driver_action_func.click_publish_btn() paypal_page_link = self.driver_action_func.edit_page_link() new_paypal_register_driver = webdriver.Chrome( ChromeDriverManager().install()) new_paypal_register_driver.get(paypal_page_link) ##今度はゴールド会員として登録して表示をチェックする。 # 新しいブラウザでインスタンス作成 paypal_register_func = Test_User_Normal_Register( new_paypal_register_driver) paypal_register_func.nomarl_put_user_info_to_form() payment_register_func = Test_User_Payment_Register( new_paypal_register_driver) payment_register_func.click_register_page_pay_pal_btn() #payment_register_func.click_new_register_page_pay_pal_btn() #新しく new_paypal_lesson_progress_func = Lesson_Progress( new_paypal_register_driver) new_paypal_lesson_progress_func.go_to_lesson_list_page() #ドライバーを新しくして、またインスタンス作成 public_member_rank_func = Public_Member_Rank( new_paypal_register_driver) result = public_member_rank_func.check_is_user_get_ranked() if (result == False): another_driver_action_func = Driver_Action( new_paypal_register_driver) xpath = "//ul[@id='wp-admin-bar-top-secondary']/li[@id='wp-admin-bar-my-account']/div[@class='ab-sub-wrapper']/ul[@id='wp-admin-bar-user-actions']/li[@id='wp-admin-bar-user-info']/a[@class='ab-item']/span[@class='display-name']" target_user_name = another_driver_action_func.get_element_by_xpath( xpath).get_attribute("innerHTML") #admin側を動かすために、あどみん側のドライバーを渡す。 paypal_admin_member_rank_func = Public_Member_Rank(self.chrome) paypal_admin_member_rank_func.set_user_status_to_gold( target_user_name) paypal_admin_member_rank_func.go_to_admin_top_page(self.target_url) public_member_rank_func.go_to_lesson_list_page() public_member_rank_func.check_lesson_overview_block_page() self.driver_action_func.stop(2) self.driver_action_func.quit(new_paypal_register_driver) def reset_block_page(self): self.go_page_list() self.go_to_lesson_over_view_page() self.admin_member_rank_func.reset_block_setting_overview_page() def check_block_page_by_normal_regsiter(self): #固定ページ一覧に移動 self.go_page_list() #固定ページの中から、新規登録ページに移動する。 self.go_to_new_register_page() new_link = self.user_register_func.get_new_register_page_link() # 普通にbasicに新しく開く処理をするとなぜか、新しくひらいたクロームが落ちてしまうのでここで普通に新しく作成。 new_normal_register_driver = webdriver.Chrome( ChromeDriverManager().install()) new_normal_register_driver.get(new_link) # 新しいブラウザでインスタンス作成 normal_register_func = Test_User_Normal_Register( new_normal_register_driver) # ユーザー情報を入れて、新しくユーザーを登録 normal_register_func.nomarl_put_user_info_to_form() lesson_progress_func = Lesson_Progress(new_normal_register_driver) #動画一覧ページに移動して、そのリンクの要素を取得 lesson_progress_func.go_to_lesson_list_page() #ドライバーを新しくして、またインスタンス作成 public_member_rank_func = Public_Member_Rank( new_normal_register_driver) public_member_rank_func.check_lesson_overview_block_page() self.driver_action_func.stop(2) self.driver_action_func.quit(new_normal_register_driver) def go_to_paypal_setting_page(self): admin_guild_press_page_path = self.admin_xpath_lists[ 'admin_guild_press_page_path'] admin_guild_press_paypal_page_path = self.admin_xpath_lists[ 'admin_guild_press_paypal_page_path'] self.driver_action_func.move_admin_page( admin_guild_press_page_path, admin_guild_press_paypal_page_path) def go_to_new_register_page(self): admin_new_regsiter_page_path = self.admin_xpath_lists[ 'admin_new_regsiter_page_path'] self.driver_action_func.single_move_admin_page( admin_new_regsiter_page_path) def go_page_list(self): admin_page_path = self.admin_xpath_lists['admin_page_path'] admin_list_page_path = self.admin_xpath_lists['admin_list_page_path'] self.driver_action_func.move_admin_page(admin_page_path, admin_list_page_path) def go_to_lesson_over_view_page(self): lesson_over_view_page_path = self.admin_xpath_lists[ 'admin_guild_press_lesson_over_view_page_path'] lesson_over_view_list_page_path = self.admin_xpath_lists[ 'admin_guild_press_lesson_over_view_list_page_path'] self.driver_action_func.move_admin_page( lesson_over_view_page_path, lesson_over_view_list_page_path) def go_to_member_rank_page(self): admin_guild_press_page_path = self.admin_xpath_lists[ 'admin_guild_press_page_path'] admin_guild_press_member_rank_page_path = self.admin_xpath_lists[ 'admin_guild_press_member_rank_page_path'] self.driver_action_func.move_admin_page( admin_guild_press_page_path, admin_guild_press_member_rank_page_path) def go_to_admin_top_page(self): self.driver_action_func.move_to_page_by_link( self.chrome, self.target_url + 'wp-admin/')
class Text_Docs_Controller: def __init__(self, driver, target_url): self.chrome = driver self.target_url = target_url self.admin_xpath_list_func = Admin_Menu_Path() self.basic_func = Basic() self.driver_action_func = Driver_Action(driver) self.admin_texts_docs_func = Admin_Texts_Docs(driver) self.user_register_func = User_Register_Setting(driver) self.paypal_add_new_func = Pay_Pal_Add_New_One(driver) self.paypal_carete_page_func = Pay_Pal_Create_Page(driver) # 管理画面のメニューのパスを返す self.admin_xpath_lists = self.admin_xpath_list_func.get_admin_menu_xpath( ) # 管理画面メニュー内の新規追加や編集などのパーツのパスを返す。 self.admin_list_parts_xpath = self.admin_xpath_list_func.get_admin_menu_list_parts_xpath( ) def start(self): ##レッスン詳細ページにブロックを設定する。 #GuildPressレッスン一覧新規追加ページへ移動 self.go_to_texts_docs_page() # 教材などを新しく追加する。 self.admin_texts_docs_func.add_texts_docs_info() #レッスン一覧へ移動 self.go_to_lesson_detail_page() #教材一覧へ移動 self.go_to_texts_docs_page() #ショートコード取得 texts_docs_shortcodes = self.admin_texts_docs_func.get_dwd_show_shortcode( ) #レッスン一覧へ移動 self.go_to_lesson_detail_page() #ショートコードセット self.admin_texts_docs_func.put_short_codes_to_lesson_detail( texts_docs_shortcodes) self.driver_action_func.stop(10) self.driver_action_func.move_to_page_by_link( self.chrome, self.target_url + 'wp-admin/') #固定ページ一覧に移動 self.go_to_page_list() #固定ページの中から、新規登録ページに移動する。 self.go_to_new_register_page() self.check_texts_docs_by_normal_user() #とっぷぺーじへ移動 self.go_to_admin_top_page() def check_texts_docs_by_normal_user(self): new_link = self.user_register_func.get_new_register_page_link() # 普通にbasicに新しく開く処理をするとなぜか、新しくひらいたクロームが落ちてしまうのでここで普通に新しく作成。 new_normal_register_driver = webdriver.Chrome( ChromeDriverManager().install()) new_normal_register_driver.get(new_link) # 新しいブラウザでインスタンス作成 normal_register_func = Test_User_Normal_Register( new_normal_register_driver) # ユーザー情報を入れて、新しくユーザーを登録 normal_register_func.nomarl_put_user_info_to_form() public_texts_docs_func = Public_Texts_Docs(new_normal_register_driver) public_texts_docs_func.go_to_texts_list_page() public_texts_docs_func.check_texts_docs_page() self.driver_action_func.quit(new_normal_register_driver) def go_to_new_register_page(self): admin_new_regsiter_page_path = self.admin_xpath_lists[ 'admin_new_regsiter_page_path'] self.driver_action_func.single_move_admin_page( admin_new_regsiter_page_path) def go_to_page_list(self): admin_page_path = self.admin_xpath_lists['admin_page_path'] admin_list_page_path = self.admin_xpath_lists['admin_list_page_path'] self.driver_action_func.move_admin_page(admin_page_path, admin_list_page_path) def go_to_lesson_detail_page(self): admin_guild_press_lesson_detail_page_path = self.admin_xpath_lists[ 'admin_guild_press_lesson_detail_page_path'] admin_guild_press_lesson_detail_list_page_path = self.admin_xpath_lists[ 'admin_guild_press_lesson_detail_list_page_path'] self.driver_action_func.move_admin_page( admin_guild_press_lesson_detail_page_path, admin_guild_press_lesson_detail_list_page_path) def go_to_texts_docs_page(self): admin_guild_press_page_path = self.admin_xpath_lists[ 'admin_guild_press_page_path'] admin_guild_press_texts_docs_page_path = self.admin_xpath_lists[ 'admin_guild_press_texts_docs_page_path'] self.driver_action_func.move_admin_page( admin_guild_press_page_path, admin_guild_press_texts_docs_page_path) def go_to_admin_top_page(self): self.driver_action_func.move_to_page_by_link( self.chrome, self.target_url + 'wp-admin/')
class Edit_User_Controller: def __init__(self, driver, target_url): self.chrome = driver self.target_url = target_url self.admin_xpath_list_func = Admin_Menu_Path() self.basic_func = Basic() self.driver_action_func = Driver_Action(driver) self.user_register_func = User_Register_Setting(driver) self.paypal_add_new_func = Pay_Pal_Add_New_One(driver) self.paypal_carete_page_func = Pay_Pal_Create_Page(driver) # 管理画面のメニューのパスを返す self.admin_xpath_lists = self.admin_xpath_list_func.get_admin_menu_xpath( ) # 管理画面メニュー内の新規追加や編集などのパーツのパスを返す。 self.admin_list_parts_xpath = self.admin_xpath_list_func.get_admin_menu_list_parts_xpath( ) def start(self): #固定ページ一覧に移動 self.go_page_list() #固定ページの中から、新規登録ページに移動する。 self.go_to_new_register_page() #普通に登録して、ユーザー情報を編集できるかチェックする。 self.check_edit_user_info() #トップページへ戻る self.go_to_admin_top_page() def check_edit_user_info(self): new_link = self.user_register_func.get_new_register_page_link() # 普通にbasicに新しく開く処理をするとなぜか、新しくひらいたクロームが落ちてしまうのでここで普通に新しく作成。 new_normal_register_driver = webdriver.Chrome( ChromeDriverManager().install()) new_normal_register_driver.get(new_link) # 新しいブラウザでインスタンス作成 normal_register_func = Test_User_Normal_Register( new_normal_register_driver) # ユーザー情報を入れて、新しくユーザーを登録 normal_register_func.nomarl_put_user_info_to_form() public_edit_user_func = Public_Edit_User(new_normal_register_driver) public_edit_user_func.go_to_my_page() public_edit_user_func.go_to_edit_page() public_edit_user_func.edit_user_info() self.driver_action_func.stop(5) self.driver_action_func.quit(new_normal_register_driver) def go_to_lesson_detail_page(self): admin_guild_press_lesson_detail_page_path = self.admin_xpath_lists[ 'admin_guild_press_lesson_detail_page_path'] admin_guild_press_lesson_detail_list_page_path = self.admin_xpath_lists[ 'admin_guild_press_lesson_detail_list_page_path'] self.driver_action_func.move_admin_page( admin_guild_press_lesson_detail_page_path, admin_guild_press_lesson_detail_list_page_path) def go_to_my_page(self): admin_go_to_mypage_path = self.admin_xpath_lists[ 'admin_go_to_mypage_path'] self.driver_action_func.single_move_admin_page(admin_go_to_mypage_path) def go_to_paypal_setting_page(self): admin_guild_press_page_path = self.admin_xpath_lists[ 'admin_guild_press_page_path'] admin_guild_press_paypal_page_path = self.admin_xpath_lists[ 'admin_guild_press_paypal_page_path'] self.driver_action_func.move_admin_page( admin_guild_press_page_path, admin_guild_press_paypal_page_path) def go_to_new_register_page(self): admin_new_regsiter_page_path = self.admin_xpath_lists[ 'admin_new_regsiter_page_path'] self.driver_action_func.single_move_admin_page( admin_new_regsiter_page_path) def go_page_list(self): admin_page_path = self.admin_xpath_lists['admin_page_path'] admin_list_page_path = self.admin_xpath_lists['admin_list_page_path'] self.driver_action_func.move_admin_page(admin_page_path, admin_list_page_path) def go_to_lesson_over_view_page(self): lesson_over_view_page_path = self.admin_xpath_lists[ 'admin_guild_press_lesson_over_view_page_path'] lesson_over_view_list_page_path = self.admin_xpath_lists[ 'admin_guild_press_lesson_over_view_list_page_path'] self.driver_action_func.move_admin_page( lesson_over_view_page_path, lesson_over_view_list_page_path) def go_to_member_rank_page(self): admin_guild_press_page_path = self.admin_xpath_lists[ 'admin_guild_press_page_path'] admin_guild_press_member_rank_page_path = self.admin_xpath_lists[ 'admin_guild_press_member_rank_page_path'] self.driver_action_func.move_admin_page( admin_guild_press_page_path, admin_guild_press_member_rank_page_path) def go_to_admin_top_page(self): self.driver_action_func.move_to_page_by_link( self.chrome, self.target_url + 'wp-admin/')
class Admin_Rock_Controller: def __init__(self, driver, target_url): self.chrome = driver self.target_url = target_url self.admin_xpath_list_func = Admin_Menu_Path() self.basic_func = Basic() self.driver_action_func = Driver_Action(driver) self.admin_lesson_lock_func = Admin_Lesson_Lock(driver) self.user_register_func = User_Register_Setting(driver) # 管理画面のメニューのパスを返す self.admin_xpath_lists = self.admin_xpath_list_func.get_admin_menu_xpath( ) # 管理画面メニュー内の新規追加や編集などのパーツのパスを返す。 self.admin_list_parts_xpath = self.admin_xpath_list_func.get_admin_menu_list_parts_xpath( ) def start(self): ##レッスン詳細ページにブロックを設定する。 self.go_to_lesson_detail_page() #ブロックの設定をしていく #self.admin_lesson_lock_func.set_block_page() #固定ページ一覧に移動 self.go_to_page_list() #固定ページの中から、新規登録ページに移動する。 self.go_to_new_register_page() self.check_block_page_by_normal_user() self.go_to_admin_top_page() def check_block_page_by_normal_user(self): new_link = self.user_register_func.get_new_register_page_link() # 普通にbasicに新しく開く処理をするとなぜか、新しくひらいたクロームが落ちてしまうのでここで普通に新しく作成。 new_normal_register_driver = webdriver.Chrome( ChromeDriverManager().install()) new_normal_register_driver.get(new_link) # 新しいブラウザでインスタンス作成 normal_register_func = Test_User_Normal_Register( new_normal_register_driver) # ユーザー情報を入れて、新しくユーザーを登録 normal_register_func.nomarl_put_user_info_to_form() public_lesson_lock_func = Public_Lesson_Lock( new_normal_register_driver) public_lesson_lock_func.go_to_lesson_list_page() public_lesson_lock_func.go_to_element_lesson_list_page() self.driver_action_func.quit(new_normal_register_driver) def go_to_new_register_page(self): admin_new_regsiter_page_path = self.admin_xpath_lists[ 'admin_new_regsiter_page_path'] self.driver_action_func.single_move_admin_page( admin_new_regsiter_page_path) def go_to_page_list(self): admin_page_path = self.admin_xpath_lists['admin_page_path'] admin_list_page_path = self.admin_xpath_lists['admin_list_page_path'] self.driver_action_func.move_admin_page(admin_page_path, admin_list_page_path) def go_to_lesson_detail_page(self): admin_guild_press_lesson_detail_page_path = self.admin_xpath_lists[ 'admin_guild_press_lesson_detail_page_path'] admin_guild_press_lesson_detail_list_page_path = self.admin_xpath_lists[ 'admin_guild_press_lesson_detail_list_page_path'] self.driver_action_func.move_admin_page( admin_guild_press_lesson_detail_page_path, admin_guild_press_lesson_detail_list_page_path) def go_to_admin_top_page(self): self.driver_action_func.move_to_page_by_link( self.chrome, self.target_url + 'wp-admin/')
class Many_Lesson_Progress_Controller: def __init__(self, driver, target_url): self.chrome = driver self.target_url = target_url self.admin_xpath_list_func = Admin_Menu_Path() self.basic_func = Basic() self.driver_action_func = Driver_Action(driver) self.user_register_func = User_Register_Setting(driver) # 管理画面のメニューのパスを返す self.admin_xpath_lists = self.admin_xpath_list_func.get_admin_menu_xpath( ) # 管理画面メニュー内の新規追加や編集などのパーツのパスを返す。 self.admin_list_parts_xpath = self.admin_xpath_list_func.get_admin_menu_list_parts_xpath( ) def start(self): for x in range(1): #固定ページ一覧に移動 self.go_to_page_list() #固定ページの中から、新規登録ページに移動する。 self.go_to_new_register_page() new_link = self.user_register_func.get_new_register_page_link() # 普通にbasicに新しく開く処理をするとなぜか、新しくひらいたクロームが落ちてしまうのでここで普通に新しく作成。 new_normal_register_driver = webdriver.Chrome( ChromeDriverManager().install()) new_normal_register_driver.get(new_link) # 新しいブラウザでインスタンス作成 normal_register_func = Test_User_Normal_Register( new_normal_register_driver) # ユーザー情報を入れて、新しくユーザーを登録 normal_register_func.nomarl_put_user_info_to_form() many_lesson_progress_func = Many_Lesson_Progress( new_normal_register_driver) #動画一覧ページに移動して、そのリンクの要素を取得 many_lesson_progress_func.go_to_lesson_list_page() #各動画の完了ボタンをクリックして、進捗を進めていく many_lesson_progress_func.progress_each_lesson() #トップページへ移動 self.go_to_admin_top_page() self.driver_action_func.quit(new_normal_register_driver) def go_to_new_register_page(self): admin_new_regsiter_page_path = self.admin_xpath_lists[ 'admin_new_regsiter_page_path'] self.driver_action_func.single_move_admin_page( admin_new_regsiter_page_path) def go_to_page_list(self): admin_page_path = self.admin_xpath_lists['admin_page_path'] admin_list_page_path = self.admin_xpath_lists['admin_list_page_path'] self.driver_action_func.move_admin_page(admin_page_path, admin_list_page_path) def go_to_admin_top_page(self): self.driver_action_func.move_to_page_by_link( self.chrome, self.target_url + 'wp-admin/')