2016년 3월 10일 목요일

클린코드를위한 테스트 주도개발

12장 마지막 장에서  뭔가 계속 오류가 나기도 하고 이해가 안가서
git checkout 이전 두챕터정도 돌아가서 다시작성하고 그렇게 2~3번 했더니
깃이 꼬여버렸는지 detached head  라고 계속 나온다.

보니까 브랜치명을 안달아주고 체크아웃 하고나서 커밋 커밋 하니까 뭔가 꼬인듯 하다

http://pcottle.github.io/learnGitBranching/

여기 사이트를 보니까 깃에대해 실습을 할수 있는 좋은 곳이 있더라.

이미 물은 엎질러졌고 답답한 마음에 실습하고 있으니 왠지 더답답 ㅠ

서버에 올린 사이트에는 텍스트 박스가 안나온다. 그런데 로컬에서 테스트하면
정상 작동된다. 로컬에 있는 내용을 깃에 올렸고 깃에 있는 내용이 서버로 들어간다

로컬 -> 깃 -> 서버

로컬에서는 텍스트 박스가 정상적으로 보이며 기능테스트, 유닛테스트 정상 동작하는 소스이다.
그내용을 깃으로 올렸고 서버에 소스를 배포 했는데
서버에서는 텍스트 박스가 안나온다 form 안에 있어야되는데 왜안나오는지 알수가 없다.

git 주소는 https://github.com/sharpscar/python_tdd

서버 주소는 superlist.gq




===================================================


3/12

github 리파지토리를 날려버리고 다시 실습한다.
처음부터 다시 읽으면서 실습하는데 잦은 에러가 나를 반긴다

제일 처음 만난 에러는 장고 1.7과 1.9.1 ?  최근 쟝고 프레임웤에서는
render_to_string() 이 템플릿의 내용중에 csrf_token 내용까지 비교하는 문제가 있는듯하다.
여기에 시간을 많이 투자하는것은 낭비 과감히 1.7로 돌아간다 ~>

우선 인코딩 에러
Unicodwarning: Unicode equal comparison failed to convert both arguments to Unicode -...

usr/lib/python2.7/unittest/case.py:503: UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal
  if not first == second:

FE..
======================================================================
ERROR: test_home_page_returns_correct_html (lists.tests.HomePageTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/kyungtai/workspace/python/second/superlists/lists/tests.py", line 43, in test_home_page_returns_correct_html
    self.assertEqual(response.content.decode(), expected_html)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xec in position 226: ordinal not in range(128)

======================================================================
FAIL: test_home_page_can_save_a_POST_request (lists.tests.HomePageTest)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/kyungtai/workspace/python/second/superlists/lists/tests.py", line 55, in test_home_page_can_save_a_POST_request
    self.assertEqual(new_item.text, '신규 작업 아이템')
AssertionError: u'\uc2e0\uaddc \uc791\uc5c5 \uc544\uc774\ud15c' != '\xec\x8b\xa0\xea\xb7\x9c \xec\x9e\x91\xec\x97\x85 \xec\x95\x84\xec\x9d\xb4\xed\x85\x9c'

----------------------------------------------------------------------
Ran 4 tests in 0.005s

FAILED (failures=1, errors=1)
Destroying test database for alias 'default'...


이유는 한글은 UTF-8을 사용해서 코딩하는데 비교하면서 이게 오류가 나는듯하다

# -*- coding: utf-8 -*-
import sys
reload(sys)
sys.setdefaultencoding('utf8')

테스트 코드 상단에 붙여넣었더니 된다.


참고할만한 구글 그룹스
https://groups.google.com/forum/#!forum/obey-the-testing-goat-book

django template 한글 문서
https://django-document-korean.readthedocs.org/en/old_master/topics/templates.html


추가적으로 기능테스트 중.. 전에는 없었던 당혹스러운 버그? 라고 해야하나?
python3 functional_test.py 를 실행하면 전에는 쟝고 튜토리얼을 한번 해보고 가상환경으로 실행해서 몰랐는데 지금은 파이어폭스가 실행되지 않으면서

kyungtai@kyungtai-W65-67SF:~/workspace/python/second/superlists$ python3 functional_test.py
kyungtai@kyungtai-W65-67SF:~/workspace/python/second/superlists$ python3 functional_test.py 


이런식으로 명령 콘솔로 툭 떨어지는 상황이 나온다.. 지금은 별다른 해결방법을 못찾았다.  

금요일 구안와사 투병중

투병이라고 썼지만 크게 괴롭지는 않다 그냥 약간 불편하다

병원에 가서 혈액, 얼굴 신경 전도 검사 결과에 대해 들었다.

혈액검사상 간수치가 높게 나와 지방간이 의심되니 3개월후 다시 검사 받는게 좋겠다고한다.
특별관리가 필요하다고 한다. 체중을 줄이지 않으면
지방간이 더 진행될수 있다고 한다.
적게먹고 많이 뛰고 많이 걷고 술은 당연히 안된다.
혈압도 높게 나온다 150정도  이것도 같은 내용이다 많이 걷고 소식하고 먹는거 가려 먹으라고한다.

얼굴 신경 전도 검사에서 왼쪽이 3.5 오른쪽이 2.5가 나왔다. 이제 조금씩 나아지는 중이니까 크게 걱정 하지 않아도 될거같다. 자기전에 마사지 10분정도씩만 해주면 좋아질거같다.


매일 아침 일어나 1시간 30분 가량 조깅을 할 예정이다. 상동 호수공원 오전 6시 30분 알람을 맞춰놓고 일어나서 매일 한시간 삼십분만 가볍게 뛸 예정이다.


2016년 3월 8일 화요일

3월 9일 관심가는것



1. 독립

우선 집에서 나와서 홀로 서기를 하고싶다.

2. 직업
백수로 산지 벌써 11, 12, 1 ,2  4개월차다 이제 일을 해야 할것같다. 밥벌이는 해야지
물론 웹개발이라든가, Python , TDD 공부하던것은 일단락 짓고 나서 뭔가를 해야한다.
그냥 어물쩡 넘어가는것은 좋지못한 습관이다.

 2-1 경력- 경력을 쌓아야 재취업이 쉽다. 경력을 쌓자


용접에 관해서 들었다. 캐나다로 기술이민을 가는 쉬운 경로라고.. 용접에는 크게 3가지가 있다고 한다.
아크, co2, 티그? 어쨋든 5년정도는 용접에 경력을 쌓고 IELTS 몇점이라더라 600점?
700점 정도는 있어야 가능하다 하더라.

그래서 조선소 용접에 관해 찾아보았다.


 자동 용접면? 자동으로 빛을 차단해주는 안면 보호구다.
 장갑이나 각반 기타등등은 직장에서 주는것을 써도 좋겠지만 용접면같은경우는 스스로 눈을 보호하는편이 좋을것 같다.

3개월가량은 죽은척하고 처음부터 끝까지 배우며 숙달을 해야 할것같다.



2016년 3월 4일 금요일

처음 겪어보는 질병 -3

벌써 5일차 ? 된듯하다 약의 횟수로는 16번째 정도 ?

구안와사라고 처음 인식한 이후 아니 그전부터 술을 입에도 댈수 없었다. (2월 20일경에 마지막으로 술을 마신게 기억난다)
자연스럽게 금주를 실천할수 밖에 없어진것. 술을 끊는것은 나처럼 의지가 약한사람에겐 불가능 하다고 생각했었지만 질병을 얻게 되니 이렇게 짧은기간이나마 술을 마시지 않게되는구나 싶다.

술을 안마시면서 작은 변화가 생겼다. 비록 마비되었다고는 하나 얼굴 피부가 약간 부드러워진것
세수를 하다가.. 샤워를 하다가 느껴졌다. '내 얼굴이 이렇게 부드러웠나?' 따로 세안제라든가 하는것은 쓰지 않는데 (로션은 피지오겔을 쓴다)

체중은 그대로다 20kg과체중 뭐 이것도 규칙적으로 운동하면 빠질거라고 믿는다.

일을 그만둔게 11월이고 그 이후 목적을 잃고 방황한게 3개월정도 된것같다.
시간도 아깝고 건강을 해친게 더 아깝다. 지금은 많은것을 정리하고 한가지에 집중하고 있다.

하루하루를 기록하고 반나절을 나눠서 내가 무엇을 하고있나 깨어있나 스스로 체크하고 그렇게 점검하는 삶을 살아야 나중에 찾아보며 행복해 할수 있으면 좋겠다.



2016년 3월 3일 목요일

파이썬을 이용한 클린코드를 위한 테스트 주도 개발 (참고)

연습중입니다 BJ퍼블릭에서 출판되었구요

난이도는 어렵지 않습니다. 파이썬을 모르는 상태에서 django girl 튜토리얼을 한번 쭈욱 따라한 후에 책 내용을 처음 ~ 113페이지까지 두번정도 따라해보았습니다.

기능테스트
 - 단위테스트
   - 최소 소스 변경

이런식으로 접근합니다. 기능테스트 테두리를 마련해놓고 테스트 성공시 리펙토링 (기능은 그대로 소스 내용만 변경) 다시 단위테스트 성공시 리펙토링 (기능은 그대로 소스만 변경)

한번에 하나씩 변경해 나갑니다. 테스트 고트님이 지켜보고 있으므로 ㅋㅋ




여기에 책의 내용을 실습하다가 변경된 사항이나 나중에 다시 찾아볼수도 있는 내용을 적어 볼까 합니다.



144페이지의  LiveServerTest ->  StaticLiveServerTestCAse로 교체하는 내용이 있습니다만

ImportError: cannot import name 'StaticLiveServerCase'

임포트 할수 없다고 나옵니다


 This was renamed to StaticLiveServerTestCase just before the 1.7 release (see #23374). Sorry for the confusion.

이름이 변경되었거든요; 
'StaticLiveServerCase ->  StaticLiveServerTestCase


3/7일 추가

간단히 만들어진 일정 어플리 케이션을 호스팅 서비스에 올리고 (저는 aws의 ec2 와 도메인은
my.freenom.com/ 여기를 활용했습니다.)

사이트는  메인/스테이징 서버 두개로 구성됩니다.

메인 :http://superlist.gq/
스테이징: http://superlist-staging.gq/

작년 프론트엔드 수업시에 팀프로젝트이후로 호스팅관련 설정(닷홈, 카페24)은
처음 해보는 작업이라 주말 이틀을 헤맸네요
aws인스턴스 3개정도 터미네이트 시키고 ㅋㅋ 다시만들었어요

요즘 나오는 프로비저닝? 배포?는 이렇게 번거롭게 하지 않는다고 그러는데 부딫쳐 봐야 약간 느낌이 오는듯 합니다

작업하면서 장애물이 많았어요 낯선툴들이 많네요( fabric, gunicorn )

에러가많아 힘들었지만 오늘 아침 일어나서 다시 해보니까 잘되네요 ^^



2016년 3월 2일 수요일

처음 겪어보는 질병 -2


구안와사에 걸리고 병원을 다녀온지 이틀째입니다.

오늘 오전에 두가지 검사를 했습니다

혈액검사 - 간 기능 수치가 제법 높게 나왔다며 지방간이 의심된다며 검사를 권했습니다.

신경전도검사(얼굴) - 마비된 부분의 신경이 얼마나 살아있나 검사하는듯 합니다.

둘다 5분가량 걸렸고 신경전도검사는 따끔 따끔 합니다. 전기를 통하게 해서 찡그리는 범위를 검사하는 모양입니다.


약도 먹고 있으며 운동도 갑작스럽지만 하고 있습니다 (팔굽혀펴기 , 턱걸이,  스퀏)
이제 첫날인데 앞으로 지속적으로 운동도하고 전에 하고싶었던 공부도하고 좋군요

거울을 보면 답답하긴 합니다. 밤에 잠도 편히 못자구요
받아들일건 받아들이고 새롭게 하나하나 만들어간다는 생각으로 마음을 잡고 생활해야할것 같습니다.


지금 돌이켜 생각해보면 이 병에 걸리기 전에 불규칙한 식습관

(살을빼겠다고 저녁을 건너 뛰고 어느순간 폭식 그리고 소화가 안된상태에서 취침)

그리고 잦은 음주  이게 몸의 면역력을 저하시키는 주된 원인이 된것같습니다.



현재 체중 : 87.5Kg

목표 체중 : 80.5Kg


7 5 5 7 1개월 간격으로 이런식으로 뺏으면 좋겠습니다

2016년 2월 28일 일요일

처음 겪어보는 질병


오랜만에 글을 남긴다.

오늘은 2월 28일 일요일

오늘 일어나보니 오른쪽 얼굴이 굳어있다. 도통 움직이질 않는다. 어제 눈치를 챘지만 구안와사라는 질병에 걸려버린듯 하다.

구안괘사라고도 하는 이 질병은 서양에선 벨마비 라고도 불리우는데 두가지 종류가 있다.

말초/ 중추

전자는 후자에 비해 비교적 간단한 질병이다. 뇌와 연결된 신경선이 염증으로 잠깐 제 기능을 못하는 질병인지라 늦으면 1년안에 제기능의 70~80%정도 돌아온다.

후자는 뇌경색이나 뇌졸중으로 가는 시작단계일수도 있다는것

나는 다행히 진료를 통해 알아본결과 말초 안면신경 마비? 머 이런거 쉽게 벨마비 걸린게 맞다.

첫신호는 수요일에 왔다. 분명히 도서관에서 컵라면을 사먹었는데 [이 시기가 국회의원들이 처음 필리버스터 한다고 했을 시기이다.] 혀가 뜨거운 국물에 데인것처럼 뭔가 이상한 느낌이 든다.  혀가 데인 느낌이 지속적으로 들었다.

그렇게 수 목 금 토 4일간을 이상하다며 혹시 시장에서 사온 김치를 많이 먹었는데 김치에 이상한 약물같은게 있어서 그런가 하고 애꿎은 김치만 의심하고 있었다.

토요일에 도서관에 가서 책을 읽으며 코딩연습 하는데 눈이 침침하다. 특히 오른쪽눈이 시큰시큰 한게 아무래도 집에 가서 수면을 취해야 겠다며 집으로가서 잤다.

자고 일어났더니 얼굴이 약간 부었는데 이게 느낌이 쌔하다 입술을 이빨로 앙하고 물려고 해봐도 잘 안물어지고 입에 물을 머금고 있으면 질질 흘리는게 노인들 입돌아간 느낌이 든다고 해야하나;; 어쨋든 내 얼굴이 말을 안듣는다고 느낀 첫신호

그당시 인터넷 검색해보니 뇌졸중 뇌경색 이런 키워드들이 눈에 들어오면서 어찌나 겁이나던지 밥먹다 대충 밀어놓고 밖에 나가 공원을 돌았다.

사실 벨마비는 원인이 다양하다 뇌와 연결된 7번 신경선? 이쪽에 바이러스가 침투해서 그렇다던가 찬바람이 부는 경우 얼굴에 찬바람을 맞으면 일어날수 있는 질병이라든가 원인은 정확히 모르나 어쨋든 겁이나서 공원을 돌고 집에 돌아와서 다시 또 잤다.

일요일  응급실을 찾았다. 여러가지 검사
피검사, 엑스레이, 심전도검사, 뇌CT 비용은 24만 8천원이 나와버렸다. 그래도 보험거쳐서 25만원돈 나왔지 보험없었으면 38만원이다.

어쨋든 오늘 결과가 벨마비로 나왔다. 원인은 정확히 모르겠다. 그냥 면역력이 떨어진 상태에서 찬바람 몇번 맞은게 원인인듯하다.

보통 집 - 도서관 거리가 시간상 30~40분간 걷는데 그때 얼굴에 바람맞아서 생긴 질환같다.
추울땐 워머를 착용하고 움직여야 할거같다.