Dismiss Join GitHub today GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together. Sign up
))) test-unit-power_assertããªãªã¼ã¹Groovyãªã©ããã¤ãã®è¨èªã®ãã¹ããã¬ã¼ã ã¯ã¼ã¯ã«ã¯ããã¹ã失ææã«ã³ã¼ãã®åå¼ã®å¤ãåºåããPower Assertã¨å¼ã°ããæ©è½ãããã¾ãã ä»åãRuby 2.0ä»¥ä¸ + test-unitåãã«åæ§ã®ãã®ãå®è£ ãã¦ã¿ã¾ãã(test-unit-power_assert)ã å©ç¨ä¾ã¯ä»¥ä¸ã®éãã require 'test/unit' require 'test/unit/power_assert' class MyTest < Test::Unit::TestCase def test_failed power_assert do "0".class == "3".to_i.times.map {|i| i + 1 }.class end end end power_assertã¡ã½ããã«ãã¹ã対象ã®å¼ããããã¯ã¨ã
JavaScriptã«å¯¾ããèªåãã¹ããã¼ã«ãå å®ããJenkinsãªã©ãç¨ãã¦CIãã¾ãã人ãå¢ãã¦ãã¾ããã ããããã¬ã¹ãã³ã·ãã¬ã¤ã¢ã¦ãããFloatã®ã¬ã¤ã¢ã¦ãå´©ããªã©ã人éãè¦ãã°ããã«åãããè¦ãç®ãã«é¢ããåé¡ã¯ãèªåãã¹ãã«ããå¤å®ããè¾ãã®ãå®æ ã§ãã ãã®è¨äºã§ã¯ããã®åé¡ã解決ããããã«ä½æããããã¹ãä¸ã«ã¹ã¯ãªã¼ã³ãã£ããã£ãåãããã®ãã©ã°ã¤ã³ãphantom-captureããç´¹ä»ãã¾ãã ç¾ç¶ã®åé¡ç¹ Jasmine ã QUnit ã¨ãã£ããã¹ããã¬ã¼ã ã¯ã¼ã¯ãã PhantomJS , sinon.js ã¨ãã£ããã¼ã«ã®å©ããåãããã¨ã§ãJavaScriptã®èªåãã¹ããè¡ããããã«ãªãããµã¼ãå´ã ãã§ã¯ãªããã¯ã©ã¤ã¢ã³ãå´ã«ãèªåãã¹ããé©ç¨ãã人ãå¢ãã¦ãã¦ãã¾ãã ãã¸ãã¹ãã¸ãã¯ãããªãã¼ã·ã§ã³ãDOMã®æ§ç¯çµæãªã©ã¯åé¡ãªããã¹ããããã¨
Contents unittest ãå¹æçã«ä½¿ãããã®è¦æ¸ ç®ç ã«ã¼ã«: ãã¹ã対象ã®ã¢ã¸ã¥ã¼ã«(module-under-test)ããã¹ãã¢ã¸ã¥ã¼ã«ã«ç´æ¥importããªã ã¬ã¤ãã©ã¤ã³: ã¢ã¸ã¥ã¼ã«ã¹ã³ã¼ãã§ã®ä¾åãæå°éã«ãã ã«ã¼ã«: åãã¹ãã¡ã½ããã§ã¯ãï¼ã¤ã®äºå®ã ãã確èªãã ã«ã¼ã«ï¼ ãã¹ãã¡ã½ããã¯å 容ã表ãããã«ããã ã¬ã¤ãã©ã¤ã³: setupã¯ãã«ãã¼ã¡ã½ããã§æä¾ãããããã¹ãã±ã¼ã¹ã®selfã§å ±æããã®ã¯ããããã ã¬ã¤ãã©ã¤ã³: ãã£ã¯ã¹ãã£ã¯å¯è½ãªéãç°¡æ½ã« ã¬ã¤ãã©ã¤ã³ï¼ ããã¯ãã¬ã¸ã¹ããªãªã©ã®å©ç¨ã¯æ³¨ææ·±ã ã¬ã¤ãã©ã¤ã³: ä¾åé¢ä¿ãæ確ã«ããããã«ã¢ãã¯ãå©ç¨ãã ã«ã¼ã«: ãã¹ãã¢ã¸ã¥ã¼ã«éã§ããã¹ããå ±æããªã ã¾ã¨ã https://twitter.com/tokibito/status/412074246026698753 ã¨ãããã¨ã§
2. èªå·±ç´¹ä» ï± çµæ´ 1976å¹´ å¯å£«éå ¥ç¤¾ãã½ããã¦ã§ã¢äºæ¥é¨æ¤æ»é¨ ï½1990å¹´ ã¡ã¤ã³ãã¬ã¼ã OS ã®è£½åæ¤æ»ãå質ä¿è¨¼ ï½1999å¹´ UNIX/PC ã®ã½ããã¦ã§ã¢è£½åã®æ¤æ»ãå質ä¿è¨¼ ï½2009å¹´ 社å ã·ã¹ãã æ¯æ´ããµã¼ãã¹ãã¸ãã¹ãç¥è²¡ã»ç¹è¨± 2009å¹´ï½ é«åº¦æ å ±é信人æè²ææ¯æ´ã»ã³ã¿ã¼ã«åºå ï± æ´»å(æ) å¯å£«éã®ã½ããã¦ã§ã¢å質ä¿è¨¼æ´»å(å ±è)(1987å¹´) Conceptual Support for Test Case Design(COMPSAC'87) Test Case Design Support System(ICQCâ87) å¯å£«éã«ãããã½ããã¦ã§ã¢å質ä¿è¨¼ã®å®é(å ±è)(1989å¹´) ã½ããã¦ã§ã¢å質管çã¬ã¤ãããã¯(å ±è)(1990å¹´) ã½ããã¦ã§ã¢å質管çäºä¾é(å ±è)(1990å¹´) ï± æ´»å(æè¿) ã½ããã¦ã§ã¢å質ç¥èä½ç³»ã¬ã¤ã(SQuB
ãã®ããã¥ã¡ã³ãã¯ãæ¢åã® RubyMotion ã¢ããªã±ã¼ã·ã§ã³ã«å¯¾ãã¦æ©è½ãã¹ããè¨è¿°ããæ¹æ³ã説æãã¾ãããã¹ãã¯ãéµå®ãããã¨ã«ãªã£ã¦ããä»æ§ã®ã»ãããæä¾ãã誤ã£ãã³ã¼ãå¤æ´ã«ãããªã°ã¬ãã·ã§ã³ãææããããã«ä½¿ç¨ã§ãã¾ãã
ååã¯ã¢ãã«ã®ã¦ããããã¹ããæ¸ãã¦ã¿ã¾ãããä»åã¯ãã¥ã¼ãã³ã³ããã¼ã©ã®ãã¹ãããã¦ã¿ã¾ãããã ãã¹ãã®æºå㨠RUBYMOTION_ENV ã¾ãæåã«ããã¥ã¼ãã³ã³ããã¼ã©ããã¹ãã§ãããã®æ©è½ã§ãããåãå ¥ããã¹ãã®ããã®ãã®ã§ã¯ããã¾ããã®ã§æ³¨æãã¦ãã ããã ãã®ãã å ¬å¼ã®ããã¥ã¡ã³ã (å訳) ã§ãããã¹ãæã«ã¯å³åº§ã«é常ã®ã¢ããªã±ã¼ã·ã§ã³ã®èµ·åããã»ã¹ãã¹ããããããããã以ä¸ã®ããã«æ¸ããã¨ãæ¨å¥¨ãã¦ãã¾ãã app/app_delegate.rb ã«è¿½å ã class AppDelegate def application(application, didFinishLaunchingWithOptions:launchOptions) return true if RUBYMOTION_ENV == 'test' # ãã®ä¸è¡ã追å # (以ä¸ç¥) ããã§åºã¦ãã
Docker is a new way to containerize services. The primary use so far has been for deploying services in a very thin container. I experimented with using it for Rails Continuous Integration so that I could run tests within a consistent environment, and then I realized that the containers provide excellent encapsulation to allow for parallelization of test suites. There are three things weâll have t
ãã¹ãæ¸ãããåé¡ - hitode909ã®æ¥è¨ é層ãå¢ããã¨ãã¹ããå¢ãã - ã¯ãã¹ãã㰠⨠ãã¹ãã¨å¯¾å¿é¢ä¿ - $shibayu36->blog; æè¿æ¸ãã¦ããWebã¢ããªã¯ãHTTPãªã¯ã¨ã¹ããéã£ã¦ã¬ã¹ãã³ã¹ã¨ç¶æ ããã¹ããããã¨ãããã¹ãã ãæ¸ãããã«ãã¦ãããªã¯ã¨ã¹ãããã¨ããã°ã¨ã³ããªãè¿ããã¨ãããµã¼ãã¹ã ã¨ãããã風ãªãã¹ããæ¸ãã¦ãã(HTMLãè¿ãããã«ããã¨è©±ãåºãã£ã¦èª¬æãé¢åãªã®ã§JSONãè¿ãAPIã§èª¬æãã) describe "Entry resource" do let(:params) do {} end let(:env) do { "HTTP_AUTHORIZATION" => "Bearer: #{access_token.token}" } end let(:access_token) do AccessToken.make(user
ã¦ã§ãã¢ããªã±ã¼ã·ã§ã³ã®JSã®ãã¹ãããã®ã«CasperJS使ã£ãã便å©ã ã£ãï¼ CasperJSã¯PhantomJSã«ãã¹ãç¨ã¦ã¼ãã£ãªãã£ãã¤ãã¦ä¾¿å©ã«ãªã£ããã¤ï¼ JSï¼MVCã§ãããã«æ¸ãã¦ãã¨ï¼Modelã®åä½ãã¹ãã¨ãã§ãããã©ï¼æãªããã®æãã ã¨ï¼ãããã¯ãªãã¯ãããããã表示ããããã¨ï¼ã¿ãããªãã¹ããæ¸ããã¨ã«ãªãï¼ãã©ã©ã¤ãã©ãªã¨ããããããã£ã¦ã©ãã使ãã°ãããåãããªãã¦æ·å± ãé«ãï¼CasperJSã使ã£ããããã ãã§å®çµãã¦ãã¹ãæ¸ããï¼ PhantomJSã¯åãªããã©ã¦ã¶ã ãã©ï¼CasperJSã¯ãã¹ãã®ãã¬ã¼ã ã¯ã¼ã¯ã¨ãï¼DOMã®ãã¹ãé¢æ°ã¨ããã¤ãã¦ãï¼ éåæãªã¿ã¹ã¯ã®å®è¡ã®ä»çµã¿ãå ¥ã£ã¦ã¦ï¼casper.thenã£ã¦ããã®ãé çªã«æ¸ãã¦ããã¨ï¼é çªã«å¼ãã§ããã¦ï¼click()ãã¦ï¼casper.thenãããï¼ãã¼ã¸é·ç§»ããã次ã®ãã¼ã¸ã«ç§»åãã¦ãï¼ã¹
æè¿ãiPhoneã¢ããªã®éçºã«èªåUIãã¹ããåãå ¥ãã¦ã¿ãã®ã§ãæã«å ¥ããç¥è¦ãå ±æãã¦ã¿ããã¨æãã¾ãã ãã®è¨äºã«ã¤ã㦠iOSã¢ããªã±ã¼ã·ã§ã³ã®èªåUIãã¹ããè¡ãããã®ãã¦ãã¦ã«ã¤ãã¦è§£èª¬ãã¾ãã ãã®è¨äºã«ãããUIèªåãã¹ãã¨ã¯iOSã·ãã¥ã¬ã¼ã¿ã¼ãå®æ©ãèªåã§èµ·åããäºãè¨è¿°ãã¦ããã¨ããã«æä½ãããã¢ããªã±ã¼ã·ã§ã³ãåé¡ãªãåãã¦ãããã©ããããã¹ãããææ³ã®ãã¨ã§ãã ä»åã¯Tuneup JSã¨å¼ã°ããã©ã¤ãã©ãªãç¨ãã¦ãã¢ããªã®èªååçãè¦ç´ ã®ãã§ãã¯ãç»åæ¯è¼ã«ãããã¹ããè¡ããæçµçã«Travis CIä¸ã§åããã¨ããã¾ã§ãæ¸ãã¦ãã¾ãã iOSéçºã®ç¥èã®ã»ããJavaScript, Rubyãç¥ã£ã¦ããã¨è¯ãããç¥ãã¾ããã ããã§ç´¹ä»ãããã®ã®ããã¤ãã¯Ruby製ã§ãããRubyGems, Bundler, Rakeãªã©ãæä½éã®ã¦ã¼ãã£ãªãã£ãåãã»ä½¿ã
æè¿ãæä½ã£ãTest Doubleã®è§£èª¬è³æãåç §ã»å¼ç¨ãã¦ãããæ¹ãã¡ãã»ãåºã¦ãã¦æ縮ãã¦ããã®ã§ãããè¦ç´ãã¦ã¿ãã¨çµæ§ãããã«ããè³æãªã®ã§ä»åæç« ã¨ãã¦ã¾ã¨ãããã¨æãã¾ããå 容ã¯ä¸éä¸è¬çã«è¨ããã¦ããMockãStubãFakeãDummyã¨ãã£ãè¨èã®å®ç¾©ã«ãªãã¾ãã Test Doubleã¨ã¯ Test Doubleã¨ã¯ããã¹ãå®è¡æã«ããã¹ã対象ãä¾åãã¦ããã³ã³ãã¼ãã³ãã¨ç½®ãæãããã®ã§ããããã¹ã代役ãã¨è¨³ããããã¨ãããã¾ããä¸ã®ä¸ã§MockãStubãFakeãDummyãªã©ã¨å¼ã°ãã¦ãããã®ã®ç·ç§°ã«ä½ç½®ã¥ãããã¾ãã ç°¡åãªä¾ã以ä¸ã«ç¤ºãã¾ãããã®ã³ã¼ãã§ã¯ããã¹ãã¡ã½ããããã¹ãã³ã¼ã()ããã¡ã½ããããã¹ã対象()ãããã¹ããã¦ãã¾ããã¾ãããã¹ã対象()ãã¯ãä¸ã§ã¡ã½ãããå¤é¨ã¡ã½ãã()ããå®è¡ãã¦ãã¾ãããªããå¤é¨ã¡ã½ãããã¯ãã¹ã対象ã§ãªãã¨ã
In the first installment of this series we covered the foundations of iOS development with RubyMotion by building the beginnings of a To Do application in a Test-Driven fashion. We learned the basics of Views and Controllers by building a simple application in which we got as far as displaying data in a list backed by an array. In this installment we will dive into the "M" behind MVC, and along th
ãªãªã¼ã¹ãé害æ å ±ãªã©ã®ãµã¼ãã¹ã®ãç¥ãã
ææ°ã®äººæ°ã¨ã³ããªã¼ã®é ä¿¡
å¦çãå®è¡ä¸ã§ã
j次ã®ããã¯ãã¼ã¯
kåã®ããã¯ãã¼ã¯
lãã¨ã§èªã
eã³ã¡ã³ãä¸è¦§ãéã
oãã¼ã¸ãéã
{{#tags}}- {{label}}
{{/tags}}