xdebugをインストール
http://xdebug.org/ から xdebug-2.0.0RC3.tgz を持ってくる
コンパイル
# cd xdebug-2.0.0RC3 # phpize Configuring for: PHP Api Version: 20020918 Zend Module Api No: 20020429 Zend Extension Api No: 20021010 # ./configure --enable-xdebug # make
インストール
# cp modules/xdebug.so /usr/local/lib/php/ # vi /usr/local/lib/php.ini
extension_dirの下にzend_extensionを追加
; Directory in which the loadable extensions (modules) reside. extension_dir = "./" ;xdebug zend_extension=zend_extension=/usr/local/lib/php/xdebug.so
apacheを再起動してxdebuugerの組み込みを確認
# service apache stop # service apache start # php -i | grep xdebug\.*support xdebug support => enabled
PHPのデバック
今は、デバックログを仕込んでセコセコとでバック中。でも、変数に値がセットされるタイミングを探せない。
探してみるとxdebugというモジュールがあるらしい。
それをvimからデバックするためのセットアップ方法があった。今は時間がないからインストールできないが、週末にやってみよう。vimからやるのが素晴らしい。
eclipseからデバッグする方法もあるのだけど今回はスルー。eclipseは便利だけどメモリーを使う量が多いのでjavaの開発以外では使わない(使いたくない)んだよね。しかも今はノートPCにvmwareを入れてサーバを動かしているので余計にメモリが心配になってるんっすよ。
seleniumでのxpathの指定の仕方に悩む
seleniumIDE使ってテストコードを作成していて、tableタグで作成した一覧表の2行目の1列目にあるaタグをクリックしたいのだけど、IDEで記録させるとアンカーのテキストを拾ってしまうが、1列目にくる値は不定なのだけど遷移先の画面での表示項目をチェックしたい。
http://wiki.openqa.org/display/SEL/Selenium+0.7+Reference+(Japanese)#Selenium0.7Reference%28Japanese%29-ElementLocator
を読んでみると//table[0]//tr[1]//td[0]//a[0]でいけそうな気はするのだが、テストを実行してみると not foundと言われてしまう。ほぼして・・・
XPather で解決
上の悩みはkstn さんがコメントに書いて下さったXPatherのプラグインをインストールしてxpathを取得したいセルの部分でxpath取得してみると
/html/body/div[@id='all']/div[@id='main']/div[@id='contents']/form[2]/table/tbody/tr[2]/td[1]/a
となったので
<tr> <td>clickAndWait</td> <td>xpath=//html/body/div[@id='all']/div[@id='main']/div[@id='contents']/form[2]/table/tbody/tr[2]/td[1]/a</td> <td></td> </tr>
として早速試してみるとするすると最後まで進んでしまった。画面がどんどんと遷移してしまったので本当に意図した遷移だったのか確認できなかったので、問題の場所にブレイクポイントを設定して再度実行。ブレイクポイントまで進んだ所で一時停止したので期待と不安の中で「1ステップ実行」を押してみると・・・
おぉ〜〜〜〜
ブラボーーー
目的通りに遷移していますよ。
テストも無事成功。
xpathがフルパスで長く、他と釣り合いがとれない(?)ので
<tr> <td>clickAndWait</td> <td>xpath=//table/tbody/tr[2]/td[1]/a</td> <td></td> </tr>
に変更して一件落着です。人力検索で質問していたのでトラックバックをしておく。
kstnさんありがとうございます。
fromとform
Webの仕事に限らず、SQLを作りながら画面を作っていると打ち間違えてハマる。
formとfrom。oとrを打つ順番が違うだけ。文法チェックがされる言語ではエラーを出してくれるだけマシ。javascriptだと、エラーも出さす通り過ぎるので値が取得できねぇ!!と小一時間悩むこともある。
焼肉牛蔵
17時開店のお店なのだが、17時15分頃にいくとその時点で「9時頃になります」と平気で言われてしまう。1年半くらい前に初めて行ったときは1時間30分ち程度だったのが、回を重ねる毎に時間は長くなり、2時間30分、3時間、今では4時間近くになろうとしている。予約を取ろうにも土日は2名での予約を受け付けていないので、一度はお店に行き予約しないといけない。携帯の番号を告げて一度帰宅。駅近くで暇を潰せるような待ち時間ではないので家でゆっくり。
お値段は大手チェーン店の○角と同じくらいなのだが美味しさが違う。満足度としては叙○苑に負けていないかも(それは言い過ぎかな)。でも、電車にのって遠路はるばる高い焼肉を食べに行くと思えば全然安いんですよ。特に「特選盛り」が美味しい。これを食べに行っていると言っても過言ではない。特選盛りを食べたあとは、その日の気分で適当に。
などと、こういう事を書いているから客が増える一方なのかもしれない。