摘要:它的目的是提供正確的方式進(jìn)行頁面交互測試,所以可以使用去點(diǎn)擊按鈕或者鏈接填寫表單甚至拖放。此外,提到測試運(yùn)行比更快。此次因底層架構(gòu)改變較大而重命名。這個(gè)功能受到的啟發(fā),能夠?qū)⒃睾喕癁榭芍赜脜^(qū)域。
Laravel Dusk轉(zhuǎn)自 Laravel 社區(qū):https://laravel-china.org/top...
當(dāng)編寫接口測試時(shí),Laravel 提供了一組有用的幫助方法,用來方便地單擊鏈接,填充表單文件或提交表單。Laravel 使用 Symfony BrowserKit 組件來模擬 Web 瀏覽器的行為。但是,如果應(yīng)用程序使用 JavaScript 和 AJAX 來加載頁面,就沒 BrowserKit 啥事了。
Laravel 5.4 將引入 Laravel Dusk 這一新工具,來解決這個(gè)問題。
Dusk 能模擬瀏覽器的運(yùn)行環(huán)境。它的目的是提供正確的方式進(jìn)行頁面交互測試,所以可以使用 Dusk 去點(diǎn)擊按鈕或者鏈接、填寫表單、甚至拖放。
Dusk 利用 ChromeDriver 和 Facebook PHP-webdriver 進(jìn)行接口測試。它作用于任何 Selenium 瀏覽器,而它自帶的 ChromeDriver 默認(rèn)情況下會根據(jù)你安裝的方式(JDK 或 Selenium)進(jìn)行保存。這使得 Dusk 很容易使用,而不需要經(jīng)歷設(shè)置 Selenium 和每次啟動服務(wù)器這些艱難的過程。此外,Taylor Otwell 提到 Dusk 測試運(yùn)行比 Selenium 更快。
Laravel Mix@JokerLinly 的文章 Laravel Dusk 又是啥?反正 Laravel 5.4 又能更好玩了
Laravel Mix 是 Elixir 的升級版,全新的 Mix 使用 Webpack 構(gòu)建,而不是之前的 Gulp。此次因底層架構(gòu)改變較大而重命名。
除非你對 Elixir 做了很多自定義設(shè)置,否則遷移應(yīng)該不用費(fèi)很大的勁,可以查看 Laracasts 對升級工具的介紹。
Blade Components 和 SlotsLaravel Blade 在 5.4 中加入 Components 和 Slots 兩個(gè)新的特性。 這個(gè)功能受到 Vue.js 的啟發(fā),能夠?qū)?HTML 元素簡化為可重用區(qū)域。舉個(gè)例子,假設(shè)你想在主頁上添加一個(gè) alert 框。
// alert.blade.php{{ $slot }}
在模板里你可以這樣加載:
@component("inc.alert") This is the alert message here. @endcomponent
支持 Markdown 語法的 Emails@JokerLinly 的文章 Laravel 在 5.4 中為 Blade 模板引擎增加新成員 —— Components & Slots
Laravel 5.3 引進(jìn)了兩個(gè)與電子郵件有關(guān)的新功能 Mailables 和 Notifications,能夠讓你通過電子郵件、短信和其他渠道發(fā)送相同的消息。
建立在這些改進(jìn)的基礎(chǔ)之上,Laravel 5.4 將引入一個(gè)全新的 Markdown 系統(tǒng)來創(chuàng)建電子郵件模板。
此功能實(shí)現(xiàn)了 Parsedown 解析器以及 Markdown Extra,這樣就可以在郵件中發(fā)送表格了。
@component("mail:message") # Thank You Thank you for purchasing from our store. @component("mail::button", ["url" => $actionUrl, "color" => $color]) {{ $actionText }} @endcomponent @endcomponent
自動化 Facades@JokerLinly 的文章 在 Laravel 5.4 中你將可以使用 Markdown 語法書寫郵件
現(xiàn)在你可以實(shí)時(shí)地使用 Facade 對任何類進(jìn)行加載。下面是個(gè)例子:
namespace App; class Zonda { public function zurf() { return ‘Zurfing’; } }
這樣在你的控制器或者路由里:
use Facades { Apponda }; Route::get("/", function () { return Zonda::zurf(); });
路由優(yōu)化@milkmeowo 的文章 [[Laravel 5.4] 新功能: 實(shí)時(shí) Facade](https://laravel-china.org/art...
隨著 Laravel 5.4 開發(fā) 的持續(xù),路由方面將會有兩個(gè)新的改進(jìn),為大型應(yīng)用程序而生的更好路 (bu) 由 (ming) 緩 (jue) 存 (li) 和更加一目了然的路由注冊方式。
Route::name("profile")->get("user/{id}/profile", function ($id) { // some closure action... }); Route::name("users.index")->middleware("auth")->get("users", function () { // some closure action... }); Route::middleware("auth")->prefix("api")->group(function () { // register some routes... }); Route::middleware("auth")->resource("photo", "PhotoController");
路由緩存層的改進(jìn)會讓那些定義了超過一千條路由的大型應(yīng)用看到希望的曙光。
集合增加高階信息傳遞(HOM)支持@JokerLinly 的文章 哎喲!Laravel 5.4 又改進(jìn)路由啦!
對此功能最好的解釋就是使用例子。假如你相對集合里的每一個(gè)元素進(jìn)行操作:
$invoices->each(function($invoice) { $invoice->pay(); });
以上是老的寫法,5.4 里你可以這樣寫:
$invoices->each->pay();
更多新功能@milkmeowo 同學(xué)對此功能做了詳細(xì)的介紹,請前往查看 https://laravel-china.org/art... 。
以下是不完全列表
新增輔助函數(shù) retry
新增輔助函數(shù) array_wrap
新增默認(rèn) 503 頁面
整個(gè)核心加載類時(shí)重構(gòu)為 ::class 調(diào)用
增加密碼重置的路由命名
支持 PhpRedis
增加 IPv4 和 IPv6 驗(yàn)證
date_format 的驗(yàn)證現(xiàn)在更加準(zhǔn)確
升級到 Laravel 5.4官方文檔包含了升級指南。以下是你重點(diǎn)需要注意的。
Laravel Tinker 現(xiàn)在是獨(dú)立的擴(kuò)展包,你需要:
composer require laravel/tinker
安裝完成后修改 config/app.php 增加:
LaravelTinkerTinkerServiceProvider
你原本的測試如果使用了 browser kit 的話,可以選擇升級到 Laravel Dusk 或者加載原有的擴(kuò)展包:
composer require laravel/browser-kit-testing --dev
最后你需要修改 composer.json 文件把 laravel/framework 指向 5.4.*。
Laravel 5.4 更多鏈接:官方升級文檔:https://laravel.com/docs/5.4/...
5.4 版本說明 https://laravel.com/docs/5.4/...
Laracasts 的關(guān)于 5.4 視頻介紹:https://laracasts.com/series/...
[Laravel 5.4] 新增 3 個(gè)全局中間件 https://laravel-china.org/art...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/30539.html
摘要:在上一篇文章基于分支,從到,再到,簡單的介紹了這里分享在開發(fā)過程中,前端選擇的心理活動。而作為核心開發(fā)之一,也負(fù)責(zé)前端這塊的開發(fā)。 在上一篇文章《 ThinkSNS+基于Laravel master分支,從1到 0,再到0.1》,簡單的介紹了 ThinkSNS+ ,這里分享在開發(fā)過程中,前端選擇的心理活動。 Laravel Mix的放棄 在 Laravel 中,前端工作流默認(rèn)是由 la...
摘要:關(guān)注了也有一小段時(shí)間,終于在今天凌晨的時(shí)候發(fā)布了。當(dāng)然我也將我的開源博客第一時(shí)間升級到,并發(fā)布版本。此項(xiàng)目由升級到也是非常的簡單,前端編譯也用全新的來替代了。升級升級到官方文檔已經(jīng)寫得很全面。 關(guān)注了 5.4 也有一小段時(shí)間,終于在今天凌晨的時(shí)候發(fā)布了。當(dāng)然我也將我的開源博客( PJ Blog )第一時(shí)間升級到 Laravel 5.4 ,并發(fā)布 jcc/blog 1.1 版本。 Lar...
摘要:關(guān)注了也有一小段時(shí)間,終于在今天凌晨的時(shí)候發(fā)布了。當(dāng)然我也將我的開源博客第一時(shí)間升級到,并發(fā)布版本。此項(xiàng)目由升級到也是非常的簡單,前端編譯也用全新的來替代了。升級升級到官方文檔已經(jīng)寫得很全面。 關(guān)注了 5.4 也有一小段時(shí)間,終于在今天凌晨的時(shí)候發(fā)布了。當(dāng)然我也將我的開源博客( PJ Blog )第一時(shí)間升級到 Laravel 5.4 ,并發(fā)布 jcc/blog 1.1 版本。 Lar...
摘要:文檔地址離線版本翻譯召集參與人員譯者推薦閱讀正式發(fā)布包含新功能說明往期回顧文檔翻譯召集文檔翻譯召集項(xiàng)目托管在上,歡迎提交反饋很榮幸跟你們一起翻譯哈譯者 showImg(https://segmentfault.com/img/remote/1460000011110053); 文檔地址:https://d.laravel-china.org/d... 離線版本:https://lar...
摘要:前言由于在度娘找了半天根本一大堆版本,弄得我死去活來的,每個(gè)都試了一堆問題,到底你們做完有沒有總結(jié)過一次然后有幾個(gè)使用,完全不行啊,太監(jiān)版不是我想要的。后來,終于找到例子并實(shí)測成功。 前言 由于在度娘找了半天根本一大堆Copy版本,弄得我死去活來的,每個(gè)都試了一堆問題,到底你們做完有沒有總結(jié)過一次?然后有幾個(gè)使用lunmen+dingo api+jwt,完全不行啊,太監(jiān)版不是我想要的。...
閱讀 2222·2023-04-26 01:57
閱讀 3240·2023-04-25 16:30
閱讀 2325·2021-11-17 09:38
閱讀 1068·2021-10-08 10:14
閱讀 1382·2021-09-23 11:21
閱讀 3678·2019-08-29 17:28
閱讀 3450·2019-08-29 15:27
閱讀 944·2019-08-29 13:04