Firebase App 추가
iOS/Firebase Chat1) ADD APP
2) iOS 선택
3) iOS App Name 등록
4) plist 파일 다운로드해서 XCode 에 등록
5) SDK 추가
Swift 로 추가
6) 등록후 Skip...
7) 확인.
'iOS > Firebase Chat' 카테고리의 다른 글
iOS Chat based Firebase (0) | 2018.06.01 |
---|
1) ADD APP
2) iOS 선택
3) iOS App Name 등록
4) plist 파일 다운로드해서 XCode 에 등록
5) SDK 추가
Swift 로 추가
6) 등록후 Skip...
7) 확인.
iOS Chat based Firebase (0) | 2018.06.01 |
---|
1) Authentication 에서 ADD USER
2) Realtime Database, GET STARTED
3) Start in test mode.
실제 서비스시에는 Start in locked mode로.
4) 왼쪽 메뉴에서 Database 선택
각 컬럼에서 + 를 눌러서 데이타베이스 생성
div p : div 아래에 있는 모든 p
div > p : div 1단계 아래에 있는 p
2020-093.CSS.Font Size.폰트 크기.rem.em.px.vh/vw.ex/ch (0) | 2020.04.05 |
---|---|
CSS1,2,3 (0) | 2020.03.04 |
CSS 변수 (0) | 2019.10.08 |
CSS Animation : 2D Transform (0) | 2019.08.14 |
(작성중) transition, transform (rotate, translate) (0) | 2018.10.26 |
https://cocoapods.org
sudo gem install cocoapods
Android 와 SWIFT 개념 비교 (0) | 2018.05.20 |
---|---|
화면 처리 순서 (0) | 2018.05.19 |
동적으로 NavigationBar 와 TableView 추가.code (0) | 2018.05.18 |
Status Bar 숨기기 (Carrier/ Wifi/ BatteryIcon Bar) (0) | 2018.05.18 |
Constraint 동적 추가 (0) | 2018.05.17 |
1) 우선 cloud.google.com 에 접속해서, Dashboard에서 각 VM 의 우측에 SSH 라는 버튼을 클릭한다.
2) SSH 접속창이 뜬다.
여기서 외부 SSH Client Tool ( Ex> Putty ) 로 접속할수 있게 세팅한다.
puttygen 을 이용하는 방법은 아래를 참조한다.
https://cloud.google.com/compute/docs/instances/connecting-to-instance#generatesshkeypair
생성 규칙에 key-commnent 가 반영되야 하므로 위 문서 꼭 참조.
Instance 생성하기 (0) | 2018.06.02 |
---|
[ 참조 ] https://mansoo-sw.blogspot.com/2016/10/swift-opencv-31-ios.html
[초급] OpenCV 초보를 위한 강좌 - 1편 : 설치하기 (0) | 2018.05.04 |
---|
1) cloud.google.com 에 접속해서 무료로 사용해보기를 클릭한다.
그럼 $300 를 준다.
2) Compute Engine > VM Instance 를 클릭한다.
3) Create 를 클릭한다.
4) Name 부터 설정을 변경하면, 우측에 비용이 바뀌니 참조해가며 변경한다.
추후에 변경가능하니 처음에는 작은 걸로 시작한다.
Boot disk 는 Debian, Centos, Ubuntu, Windows 등이 있다.
Region 은 Cloud 서버가 있는 위치다. 그리고 위치에 따라 가격 다르다.
아무래도 Tokyo 면 접속 속도가 빠르리라 생각된다.
Windows 는 server 2016 버전을 사용 권장.
Firewall 은 HTTP 와 HTTPS 모두 허용.
이렇게 하니 월 예상비용이 $24.67 이다.
Create 를 클릭해서 VM Instrance 를 생성한다.
5) Window 면, 생성후에 대시보드 > VM 에서 RDP 암호를 꼭 설정해야 함.
SSH 접속 (0) | 2018.06.02 |
---|
[ 참조 ] https://github.com/Hpark11/firebaseChatTest
https://github.com/Hpark11/firebaseChatTest
[ 2017-509 ]
Firebase App 추가 (0) | 2018.06.04 |
---|
from selenium import webdriver
from selenium.webdriver.common.by import By
# WebDriverWait는 Selenium 2.4.0 이후 부터 사용 가능합니다.
from selenium.webdriver.support.ui import WebDriverWait
# expected_conditions는 Selenium 2.26.0 이후 부터 사용 가능합니다.
from selenium.webdriver.support import expected_conditions as EC
from bs4 import BeautifulSoup
driver = webdriver.Chrome('chromedriver.exe')
# 브라우저가 무조건 3초 기다림.
driver.implicitly_wait(5)
driver.get('http://www.t.net')
# 특정 개체가 나올때까지 10초간 대기 ( 로그인전 )
try:
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, '//*[@id="loginli"]/a')))
finally:
driver.find_element_by_xpath('//*[@id="loginli"]/a').click()
driver.find_element_by_xpath('//*[@id="loginli"]/a').click()
driver.find_element_by_name('memberid').send_keys('아이디')
driver.find_element_by_name('memberpwd').send_keys('비밀번호')
driver.find_element_by_xpath('//*[@id="btn_login"]').click()
# 특정 개체가 나올때까지 10초간 대기 ( 로그인후 )
try:
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, '//*[@id="login_div2"]/li[3]/a')))
finally:
print("")
driver.get("http://www.t.net/math/main.jsp")
try:
# 중요 : frame 안의 frame 은 최상위부터 차례대로 하나씩 내려가야 한다.
driver.switch_to_default_content()
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, 'main')))
driver.switch_to_frame(driver.find_element_by_name("main"))
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, 'middleFrame')))
driver.switch_to_frame(driver.find_element_by_name("middleFrame"))
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, 'leftFrame')))
driver.switch_to_frame(driver.find_element_by_name("leftFrame"))
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, '//*[@id="t_left_menu"]/div[1]/p/span')))
finally:
# 하나만 찾기
membername = driver.find_element_by_xpath('//*[@id="t_left_menu"]/div[1]/p/span')
print(membername.text)
# 여러개 찾기
try:
driver.switch_to_default_content()
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, 'main')))
driver.switch_to_frame(driver.find_element_by_name("main"))
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, 'middleFrame')))
driver.switch_to_frame(driver.find_element_by_name("middleFrame"))
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.NAME, 'mainFrame')))
driver.switch_to_frame(driver.find_element_by_name("mainFrame"))
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.XPATH, '//*[@id="datatable"]/table')))
finally:
tasklist = driver.find_elements_by_css_selector('#datatable > table > tbody > tr > td > div > div')
for t in tasklist:
print(t.text)
# 동작중에 다른 웹 화면이 가려지거나 하면 오동작도 하는 것 같다.
# 가끔동작하지 않는 경우가 있는데, 왠만한 곳에는 WebDriverWait 을 추가한 후에 액세스하는 것이 좋을 듯 하다.
Selenium 을 이용한 Web 어플리케이션 테스트 자동화 (0) | 2018.05.31 |
---|---|
Web Automation Test Tool Guide (0) | 2018.05.31 |
참조 http://tech.whatap.io/2015/10/02/automation-with-selenium/
WebCrawl.py (0) | 2018.06.01 |
---|---|
Web Automation Test Tool Guide (0) | 2018.05.31 |