פתרון לבאג I Follow בCucumber עם Capybara

בזמן עבודה על אפליקציה חדשה וכתיבת טסטים נתקלתי בבעיה שלקח לי זמן למצוא לה פתרון, אז חשבתי להקל על קהל הקוראים שלי ולכתוב פוסט על הפתרון (כתבתי גם באנגלית – A soltion for the “I Follow” bug with cucumber and Capybara)

זה הסנריו שכתבתי בשביל לבדוק מחיקה של פרויקט מתוך דף הבית של החשבון:

  Scenario: Deleting a project from the main page
    Given I am on the account home page
	When I follow "Delete Project"
	Then I should see "Your project has been deleted"

וזו השגיאה שהתקבלה בזמן ריצת הTest

#
undefined local variable or method `node' for #<Capybara::Driver::Node tag="a" ...
#

והנה גם צילום מסך שלה שיהיה ברור יותר
Screen shot 2010-11-23 at 5.36.24 PM
לאחר גירודי פדחת רבים וארוכים ובדיקה בכול הIssues הקיימים כמעט בRepository מצאתי לכך פתרון.

בקובץ env.rb ישנה שורה שצריך לעשות לה comment out, פשוט לסמן אותה בהערה ולהריץ את הטסט שוב, זה פתר לי את הבעיה

require 'cucumber/rails/capybara_javascript_emulation' # Lets you click links with onclick javascript handlers without using @culerity or @javascript

מקווה שאתם תשרפו פחות זמן ממני בזכות הפוסט הזה.