1. Trang chủ
  2. » Công Nghệ Thông Tin

the little book of website quality control

37 166 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 37
Dung lượng 3,64 MB

Nội dung

O’Reilly Web Platform The Little Book of Website Quality Control Jens Oliver Meiert The Little Book of Website Quality Control by Jens Oliver Meiert Copyright © 2017 Jens Oliver Meiert All rights reserved Printed in the United States of America Published by O’Reilly Media, Inc., 1005 Gravenstein Highway North, Sebastopol, CA 95472 O’Reilly books may be purchased for educational, business, or sales promotional use Online editions are also available for most titles (http://safaribooksonline.com) For more information, contact our corporate/institutional sales department: 800-998-9938 or corporate@oreilly.com Editor: Meg Foley Production Editor: Shiny Kalapurakkel Copyeditor: Octal Publishing, Inc Interior Designer: David Futato Cover Designer: Karen Montgomery October 2016: First Edition Revision History for the First Edition 2016-09-20: First Release The O’Reilly logo is a registered trademark of O’Reilly Media, Inc The Little Book of Website Quality Control, the cover image, and related trade dress are trademarks of O’Reilly Media, Inc While the publisher and the author have used good faith efforts to ensure that the information and instructions contained in this work are accurate, the publisher and the author disclaim all responsibility for errors or omissions, including without limitation responsibility for damages resulting from the use of or reliance on this work Use of the information and instructions contained in this work is at your own risk If any code samples or other technology this work contains or describes is subject to open source licenses or the intellectual property rights of others, it is your responsibility to ensure that your use thereof complies with such licenses and/or rights 978-1-491-96633-4 [LSI] Foreword Website quality is often an overlooked and underrated web development topic I could go on about my personal philosophy, but what matters most is the person who shaped and guided my website quality ideology perhaps more than any other developer with whom I’ve ever worked: Jens Oliver Meiert Over the years, I’ve followed Jens through his ideas, blog posts, and books When I finally got the chance to work closer with him, I began to really understand his philosophy behind developing and maintaining websites alongside his relentless focus on quality We spent lots of time debating the merits of what quality meant, championing its importance, and making it work in fast-paced environments in which quality is more commonly a convenience rather than a requirement He was first to begin promoting the positive impact of quality on development, performance, collaboration, and overall maintenance in large web development teams To operate at scale, the focus switched from policing to advocating for quality while centering efforts around establishing value behind tools and automation For Jens, quality became a benchmark of professionalism and symbol of craftsmanship that still holds true today This little book is a glimpse into the world of website quality from the perspective of a passionate developer who strives to educate other developers and improve websites You will learn everything from topics related to website quality, putting it in practice, and the tools to help with the process Kevin Khaw Acknowledgments Quality, as this book aims to show, is such an important matter that it would be surprising if I, writing about the very subject, could not name the people to whom I’m indebted Lars Röwekamp and Jens Schumann, executives of Open Knowledge GmbH in Oldenburg, Germany—where I learned to improve my code—are the first to come to my mind Yet, as an important goal and a sign of professionalism, the mindset of quality comes close to ideas like “if something’s worth doing, it’s worth doing well,” too This little book would not exist were it not for old role models and old sayings, as well as for all the people who have made it reality For that, I want to thank very much my former colleague, manager, and good friend Kevin Khaw for the Foreword Finally, I want to recognize the entire O’Reilly team for their swift, competent, and kind help When this book turns out well, it will have been because of them Thank you all The Little Book of Website Quality Control Introduction There’s always something professional about doing a thing superlatively well —Colonel Pickering, in George Bernard Shaw’s Pygmalion What is a good website? For us web professionals, this is a most important question Building good websites is part of our professional ethics, stemming from a code of honor that asserts that we can be professionals only if our work is good But how we know that our work—that our websites—are good? Many criteria and examinations come to mind, but there is actually an entire field dedicated to informing us: quality management Quality management, which can be broken down into quality planning, quality control, quality assurance, and quality improvement, comes with a host of methods to not just identify (control) and fix (improvement) defects, but to avoid them systematically (planning, assurance) This little book, which is the third in a series of books that cover important components of modern web development (after web frameworks and coding standards), focuses mostly on the quality control piece, for if we can’t “see” what’s wrong, we won’t fix or plan to avoid what’s wrong Still, it’s going to share advice on how to tie quality to our processes, for it is more useful to learn how to fish than to hope to be fed every day The book will all of this in a loose and relaxed manner, however, and not to the extent ISO standards would cover quality Finally, and although this should matter only in few instances, the book hinges more on websites rather than web apps That distinction is usually relevant when it comes to standards and development best practices, but there are some differences in how one should go about quality checking of sites as opposed to apps What follows will work slightly better and allow for more complete quality control of websites This is a little book, then, because it’s short Let’s leave the intro behind What Is Quality Control? Wikipedia defines quality control (often, but rarely in this book, abbreviated as “QC”) as “a process by which entities review the quality of all factors involved in production.” ISO 9000, also through Wikipedia, is said to define quality control as “a part of quality management focused on fulfilling quality requirements.” Google, without offering attribution, understands quality control to be “a system of maintaining standards in manufactured products by testing a sample of the output against the specification.” We want to use a definition that is stricter on the one end and more lenient on the other: “Website quality control entails the means to determine (a) whether they meet our expectations and (b) to what degree our websites meet professional best practices.” “Means,” then, will refer largely to infrastructure—that is, tools Also, as stated a moment ago, we’ll look at some processes and methods useful to improve, not just measure, the quality of our work Why Is Quality Control Important? Quality control is—for that decisive reason—important, because without it we have no robust way of determining whether what we and produce is any good Quality control, therefore, is a key differentiator between professional and amateur work Consistent quality is the mark of the professional Quality control, finally, saves time and money and sometimes nerves, particularly in the long run But what are our options to control the quality of our websites? We’ll look at that now in more detail The Great Website Quality Control Rundown When you think about the quality of websites, what comes to your mind? How would you test—and what would you test for? Take a moment to ponder this question We should readily recall some tools and tests known to us from our everyday work Some of us might remember validators; some might think of linters; and for others, security suites pop into their minds What we test for? Not only spec compliance as with validation, or code formatting with linters, we can—and should, as professionals—test for everything we can get our hands on Going through what we can get our hands on and showing what tools we have at our disposal is the purpose of this section For each area, in descending order of importance, we’ll go over why quality control matters and look at available tools and automation options The tools are mostly web-based; applications have been left out, and exceptions noted The idea was not to shoulder the probably impossible task of listing and evaluating all tools, but to give the interested reader a starting point to evaluate production sites instantly (Note that despite all diligence exercised in retrieving and evaluating these tools, neither the author nor O’Reilly Media assumes responsibility for the usefulness, reliability, or accuracy of the tools listed.) Security Security can be considered the most important thing to test for because whatever it is we and our users are doing, if the security of it is compromised, we and our users are compromised and can be harmed in a number of ways, from losing data (and privacy) to losing the service itself, and possibly much more We stand and fall with the security of the services that we offer Security is critical, but it’s also tricky in the light of website quality control For one, websites— rather than apps—might or might not deal with any personal and sensitive information or even ask their users to provide such information For another, security is not trivial to test and not necessarily to be evaluated all from the outside This leads us to the situation in which, although security is so crucial, there’s not that much to add outside the context of dedicated information security Let’s go over some tools that are available to us (again primarily with a focus on web-based tools) The responsible website owner should—and will—employ additional, notably inner-organizational means to ensure that his services and the data those services gather are secure AES Encrypter Bandwidth Speed Test Blowfish Hash Generator CSS Compressor HTML Compressor HTML Compressor (html-minifier) JavaScript Compressor Quality Control in Practice With the overview and tools we’ve now gathered, what does quality control of websites look like in practice? Is this all we need? What pitfalls are there? What we need to watch out for? There are indeed a few things to consider Training Training is a first, very important step toward successfully implementing quality control practices Training should be understood very generally here, for any professional training that teaches people how to produce better work will at the same time help quality In that sense, training will not be elaborated on here However, training can also be offered and attended specifically to establish a quality mindset, to improve the associated skills, and to promote tools that measure and improve quality (As such, training will also be linked to the following points, but not be called out again.) Mindset The most important factor when it comes to practical quality is the mindset The greatest quality initiative is not worth much if it’s not clear to the team and enterprise why quality matters, and how quality is beneficial for them The key to a conducive mindset is communication; a potential trap is rewards Communication Communication is the primary way to spread and instill a mindset of quality, with quality as the goal and guiding principle This communication should sporadically repeat, but doesn’t need to consist of overt reminders on why quality matters and how it benefits everybody If we want to repeat the essence of both answers here, then: quality is important to deliver work that is good by professional standards and benefits everyone, because products of quality are easier and more pleasant to consume and work with Communication is, for that reason, important because we all benefit from being reminded of our priorities Based on this, communication can now range from bylines in regular company and team communications, thanking everyone for the vigilance to produce good work, to dedicated emails emphasizing the goal and importance of quality Rewards Rewards, then, are no key for a quality mindset We should avoid rewards Rewards might compel people to participate in quality-related events—see “Logistics”—but they don’t necessarily compel people to embrace quality (in fact, they rarely do) They seem to distract from, rather than point to the message I’ve had some such experiences with international teams, whereby rewards did help draw attention to quality-related initiatives, but they didn’t lead to a better understanding of, or a higher motivation, for more quality What was more effective was communication, notably through managers Hierarchy and authority can, of course, be great facilitators in our quest to improve the quality of our work Automation Insist on automation Insist—on automation Of course, we’re inclined to say—once we’ve automated all quality-relevant tasks and processes, what’s there to be missed, how could we get anything wrong? But we haven’t progressed quite yet to the point that we’re able to automate everything Our reality is that not enough is being automated, and sensitizing for that is what this very practical recommendation aims at We must automate as much as we can; we must insist on automation We have discussed many tools so far and are going to summarize them again (it follows a section listing all our tools)—some of those are very easy to implement and automate, but for others, per our now-defined goal to automate and insist to automate, will require a bit of an effort A discussion on how to write and run automation scripts on different platforms is beyond the scope of this little book, but if you’d like to see what that can look like, read complementary books like Learning Linux Shell Scripting, Network Programmability and Automation, or Learn AppleScript Enforcement In the context of coding guidelines, we’ve learned to differentiate between descriptive or positive guidelines and those that are prescriptive or normative (see The Little Book of HTML/CSS Coding Guidelines) The difference is mostly practical—when code quality is at a high level, we merely document (describe) what everyone’s already doing; when code quality is low, we tell everyone what to (prescribe) However, as it pertains to much of what we’ve discussed so far, this requires some way of enforcement How we enforce quality? This is still a difficult question; so difficult, in fact, that in practice we often see it dodged Why? Because enforcement easily upsets people, and we don’t want to upset people, not even—or especially—when they report to us But we’re on the right track here Enforcement happens top-down Executives and managers are to be looked at to emphasize and live quality, to reward good quality, and to—in one way or another—discourage poor quality How? By doing what we surprisingly forget frequently: measuring quality and tying related metrics to performance evaluations Two anecdotes illustrate that approach There’s one tale of a manager who has, despite efforts of his team to up the ante and increase quality in his department, never endorsed, let alone supported or encouraged those team members’ efforts in team communications or goals That quality initiative’s efforts, witnessed at one point at a major corporation, suffered a significant blowback At the same firm at another time, managers called out the importance of quality and used available data points, like performance scores as measured by Google’s PageSpeed tools, accessibility problems as measured by Sidar’s HERA, or the number of validation errors as measured by W3C’s Link Checker Although the team in question never got to tie metrics like these to performance evaluations, that precise step was on the table as to have strong encouragement and—ultimately enforce—higher quality Logistics In broad terms, our efforts around quality require logistics These might consist of the following, listed briefly for inspiration: Standards and guidelines documentation No quality effort can succeed without standards and guidelines These can be external, but wherever they can be found, they must still be documented Meta documentation What our quality efforts entail and require must also be documented That… Internal websites or wikis …is best done on some internal website or wiki Here, we should gather everything we want, know, do, and plan Dedicated contacts Quality stands and falls with people At least one among them should serve as a primary contact, and that person must not just be responsible and accountable (and laudable), but also discoverable and available Mailing lists To coordinate quality efforts, communicate new and updated documentation, and so on, mailing lists are a crucial tool There might be lists for quality-related teams to lists for the entire enterprise Events Google has a practice to host “fix-its” or “fixlets,” events that let the company or departments clean up and improve their work and code base, but quality events can really range from a toast on quality at the daily scrum meeting to external conferences (with company representation) talking about quality The more a quality initiative grows and matures, the more tools and methods it might employ, and yet what we describe here is about showing some of the basic items that we can turn to Tools The following serves as an index of a range of web-based tools, browser extensions, command-line tools, scripts, and bookmarklets It is not complete; it might lack some important tools; but many tools come with my endorsement, and the promise to also serve others well (By the way, my UITest.com site is a hub for web-based testing tools, generators, and anything else web-based that’s useful for web developers and designers You can find many of the tools listed in this book and more there.) Accessibility Analysis (Gecko browser extension) (https://mzl.la/2cqOkkH) Accessibility Check (AATT; Automated; command-line tool) (https://github.com/paypal/AATT) Accessibility Check (FAE) (http://fae20.cita.illinois.edu/) Accessibility Check (WAEX) (http://www.it.uc3m.es/vlc/waex.html) Accessibility Check (WAVE 3.0) (http://wave.webaim.org/) Accessibility Developer Tools (WebKit browser extension) (http://bit.ly/2cI92xl) Accessibility, HTML, and Link Check (WebKit and Gecko browser extension) (https://www.totalvalidator.com/) Accessibility Linter (http://accesslint.com/) Accessibility Visualization (script) (https://github.com/Khan/tota11y) AES Encrypter (https://www.infoencrypt.com/) Android Emulators (http://www.manymo.com/emulators) ARIA Validator (WebKit browser extension) (http://bit.ly/2cqQccO) Availability Check (CurrentlyDown.com) (http://www.currentlydown.com/) Availability Check (Is It Down Right Now) (http://www.isitdownrightnow.com/) Availability Check (Regional; InternetSupervision.com) (http://bit.ly/2cRSwiS) Availability Check (Regional; Site24x7) (http://bit.ly/2caFmL3) Bandwidth Speed Test (http://www.bandwidthplace.com/) Blowfish Hash Generator (http://hash.online-convert.com/blowfish-generator) Browser Screenshots (Windows, Mac OS, Android, iOS) (http://www.browserstack.com/screenshots) Browser Screenshots (Windows, Mac OS, Linux) (http://browsershots.org/) Browser Test Automation (Sahi; browser extension) (http://sahipro.com/docs/introduction/) Browser Test Automation (Selenium; browser extension) (http://bit.ly/1JVDVIY) Browser Test Automation (Squish) (https://www.froglogic.com/) Browser Test Automation (Watir; browser extension) (https://watirwebdriver.com/) CMS Detector (http://guess.scritch.org/) Code Formatter (Code Beautifier) (https://ctrlq.org/beautifier/) Code Formatter (Pretty Printer) (http://www.prettyprinter.de/) “Cognitive Walkthrough for the Web” Tools (http://bit.ly/2cBu5ED) Colorblind Web Page Filter (http://colorfilter.wickline.org/) Color Contrast Analysis (Jonathan Snook) (http://bit.ly/2cmljIc) Color Contrast Analysis (WCAG Contrast Checker; Gecko browser extension) (https://mzl.la/2cmVY1A) Color Contrast Analysis (WebAIM) (http://webaim.org/resources/contrastchecker/) Color Deficit Emulation (http://www.vischeck.com/vischeck/vischeckURL.php) Color Selector (http://bit.ly/2cGbe9P) Cookie Editor (WebKit browser extension) (http://bit.ly/2ctdnGQ) CSR Decoder (https://www.sslshopper.com/csr-decoder.html) CSS Accessibility Analysis (http://bit.ly/2cWIADz) CSS Analysis (http://cssstats.com/) CSS Compressor (http://hell.meiert.org/aux/compress/css/gui/) CSS Formatter (CSS Portal) (http://bit.ly/2cl8H2K) CSS Formatter (Lonnie Best) (http://bit.ly/2cKq91z) CSS Linter (http://csslint.net/) CSS Optimizer and Formatter (CSS Beautifier) (http://bit.ly/2ccoJ1v) CSS Optimizer and Formatter (CSScomb) (http://csscomb.com/online/) CSS Validator (W3C) (http://jigsaw.w3.org/css-validator/) CSS Validator (WDG) (http://www.htmlhelp.com/tools/csscheck/) DAML Validator (http://www.daml.org/validator/) Design Responsiveness Test (http://responsivepx.com/) DNS Analysis (https://cloudmonitor.ca.com/en/dnstool.php) DNS Propagation Check (https://www.whatsmydns.net/) Download Time Calculator (http://www.whytehouse.com/opener.html) Edge Compatibility Test (http://doesitworkonedge.com/) Email Blacklist Check (http://mxtoolbox.com/blacklists.aspx) Font Combinator (http://font-combinator.com/) Font Comparison (http://www.typetester.org/) Font Determiner (WhatFont; WebKit browser extension) (http://bit.ly/2cUTmY6) Font Determiner (WhatTheFont) (http://www.myfonts.com/WhatTheFont/) Font Fallback Determiner (bookmarklet) (http://ffffallback.com/) FTP Server Test (https://www.dotcom-tools.com/ftp-server-test.aspx) Golden Ratio Typography Calculator (http://www.pearsonified.com/typography/) Google Webmaster Guidelines Check (https://varvy.com/) hCalendar Generator (http://microformats.org/code/hcalendar/creator) hCard Generator (http://microformats.org/code/hcard/creator) hCard Validator (http://hcard.geekhood.net/) htaccess Validator (http://bit.ly/2cqOs3D) HTML Compatibility Check for XHTML (http://qa-dev.w3.org/appc/) HTML Compressor (http://htmlcompressor.com/compressor/) HTML Compressor (html-minifier) (http://bit.ly/2cUUjQ8) HTML Formatter (http://bit.ly/2cpa6qj) HTML, CSS, and Conformance Validator (http://validator.w3.org/unicorn/) HTML, CSS, and JS Formatter (https://www.dirtymarkup.com/) HTML Outline Extractor (http://gsnedders.html5.org/outliner/) HTML Validator (W3C) (http://validator.w3.org/) HTML Validator (WDG) (http://bit.ly/2cBBH9X) HTML Validator (http://html5.validator.nu/) HTTP Header Editor (Request Maker; WebKit browser extension) (http://bit.ly/2cWGNOH) HTTP Header Editor (Tamper Data; Gecko browser extension) (https://mzl.la/2coxG7D) HTTP Header Test (http://www.rexswain.com/httpview.html) HTTP Header Test (Advanced) (http://bit.ly/2ctczOY) Image and Link Analysis (http://bit.ly/2cKgyaV) Internationalization Check (http://bit.ly/2ccmF9Q) Internet Explorer Viewer (IE NetRenderer) (http://netrenderer.com/) Internet Explorer Viewer (URL2PNG) (https://www.url2png.com/) IP Address Trace (http://www.ip-tracker.org/) IP Determiner (DSLReports) (https://www.dslreports.com/whois) IP Determiner (http://www.ipdatabase.com/) IP Spam Check (http://www.spamhaus.org/lookup.lasso) iPhone Emulator (http://iphone4simulator.com/) JavaScript Compressor (http://dean.edwards.name/packer/) JavaScript Linter (JSHint) (http://jshint.com/) JavaScript Linter (JSLint) (http://www.jslint.com/) JSON Formatter (http://bit.ly/2cX1dXT) JSON Validator (http://pro.jsonlint.com/) Layout Bug Test (script) (http://bit.ly/2czWyeT) Link Analysis (http://juicystudio.com/services/linktest.php) Link Check (LinkTiger) (http://www.linktiger.com/) Link Check (Site Valet) (http://valet.webthing.com/link/) Link Check (W3C) (http://validator.w3.org/checklink) Load Time and Object Check (http://bit.ly/2cl1DDw) Load Time Check (http://bit.ly/2cRR4N7) Lynx Viewer (http://www.delorie.com/web/lynxview.html) Malware and Security Scanner (http://sitecheck.sucuri.net/) Markup Validator (http://www.validome.org/) MD5 and SHA Hash Generator (http://onlinemd5.com/) MD5 Encrypter (http://www.md5online.org/md5-encrypt.html) Microformat Extractor and Transformer (http://microform.at/) Mobile Emulator (http://mtld.mobi/emulator.php) Mobile-Friendliness Check (http://bit.ly/1TaiOL0) MX Lookup (http://mxtoolbox.com/) Network Intrusion Prevention and Analysis (Kismet; command-line tool) (https://kismetwireless.net/) Network Intrusion Prevention and Analysis (Snort; command-line tool) (https://www.snort.org/) Open Graph and Semantics Extractor (https://developers.facebook.com/tools/debug) Opera Mini Emulator (http://opr.as/2cKpahy) Password Generator (Arantius.com) (http://tools.arantius.com/password) Password Generator (GRC) (https://www.grc.com/passwords.htm) Password Generator (Packetizer) (https://secure.packetizer.com/pwgen/) Password Security Check https://howsecureismypassword.net/ Password Security Check (GRC) (https://www.grc.com/haystack.htm) Performance and Scalability Test (Pylot; command-line tool) (http://www.pylot.org/) Performance and Scalability Test (Tsung; command-line tool) (http://tsung.erlang-projects.org/) PGP Decrypter (http://www.igolder.com/pgp/decryption/) PGP Encrypter (http://www.igolder.com/pgp/encryption/) PGP Key Generator (http://www.igolder.com/pgp/generate-key/) Ping Tool (https://tools.pingdom.com/ping/) Ping Tool (Regional) (http://bit.ly/2coze1f) P3P Validator (http://www.w3.org/P3P/validator.html) QA Style Sheet (bookmarklet) (https://github.com/j9t/qa-style-sheet) RDF Validator (http://www.w3.org/RDF/Validator/) Reputation and Safety Check (https://www.mywot.com/) Responsiveness Test (http://www.viewlike.us/) Reverse IP Lookup (http://mxtoolbox.com/ReverseLookup.aspx) Rich Pin Validator (http://bit.ly/2cBCh7x) robots.txt Syntax Check (http://bit.ly/2cl6HYm) RSS and Atom Feed Validator (http://validator.w3.org/feed/) SADiC Validator (http://bit.ly/2cUCpzP) SBML Validator (http://sbml.org/Facilities/Validator/) Schema Generator (http://schema-creator.org/) Section 508 Check (http://www.508checker.com/) Section 508 and WCAG 1.0 Check (Site Valet) (http://valet.webthing.com/access/url.html) Section 508 and WCAG 2.0 Check (Cynthia Says) (http://www.cynthiasays.com/) Section 508, WCAG 2.0, and BITV 1.0 Check (http://achecker.ca/checker/) Security Breach Victim Check (https://haveibeenpwned.com/) Security Analysis (OWASP Mantra; browser extension) (https://sourceforge.net/projects/getmantra/) Semantics Check (Gecko browser extension) (https://mzl.la/2cjC31A) Semantics Extractor (http://bit.ly/2cp0MTp) Semantics Parser and Extractor (http://buzzword.org.uk/swignition/try) SHA-512 Hash Generator (http://bit.ly/2cWHLKX) Sitemap Validator (http://www.validome.org/google/validate) SPDY Implementation Check (http://spdycheck.org/) SQL Injection and Database Check (command-line tool) (http://sqlmap.org/) SQL Injection Scanner (command-line tool) (http://bit.ly/2ctd5fN) SQL Validator (http://developer.mimer.se/validator/index.htm) SSL Certificate Check (DigiCert) (https://www.digicert.com/help/) SSL Certificate Check (SSL Shopper) (https://www.sslshopper.com/ssl-checker.html) SSL Client Check (https://www.howsmyssl.com/) SSL Scanner (command-line tool) (https://github.com/iSECPartners/sslyze) SSL Server Test (https://www.ssllabs.com/ssltest/) Traceroute Tool (https://cloudmonitor.ca.com/en/traceroute.php) Structured Data Test (Google) (https://search.google.com/structured-data/testing-tool) Structured Data Test (Yandex) (https://webmaster.yandex.com/microtest.xml) SVG Validator (http://bit.ly/2ctwMr0) Traceroute Tool (Visualized) (http://traceroute.monitis.com/) Trustworthiness Check (http://www.scamadviser.com/) Twitter Card Test (https://cards-dev.twitter.com/validator) Type Diff (https://tiff.herokuapp.com/) Type Live Test (http://typewonder.com/) Type Scale (http://type-scale.com/) Type Scale (Modular) (http://www.modularscale.com/) UI Test Automation (Ghost Inspector; browser extension) (https://ghostinspector.com/) UI Test Automation (Screenster) (http://screenster.io/) Universal Validator (http://watson.addy.com/) User Agent Detector (http://ua.met.cz/) User Identity Generator (http://bit.ly/2c84dAz) Viewport Size Determiner (http://bit.ly/2cScuWp) Virus Scanner (http://www.virustotal.com/) Wake-on-LAN Service (http://www.dslreports.com/wakeup) WCAG 1.0 Check (SIDAR) (http://www.sidar.org/hera/) WCAG 1.0 Check (TAW) (http://www.tawdis.net/) WCAG 2.0 Check (BOIA) (http://www.boia.org/) WCAG 2.0 Check (Evaluera) (http://www.evaluera.co.uk/) Web Application Security Analysis (Canoo; command-line tool) (http://bit.ly/2cT9wFm) Web Application Security Analysis (OWASP; server application) (https://sourceforge.net/projects/owasp/) Web Application Security Analysis (Skipfish; command-line tool) (https://github.com/spinkham/skipfish) Web App Test Automation (command-line tool) (https://github.com/svenfuchs/steam) Web Font Generator (http://bit.ly/2cWYrlz) Website Analysis (Alexa) (http://www.alexa.com/) Website Analysis (Nibbler) (http://nibbler.silktide.com/) Website Analysis (RankFlex) (http://www.rankflex.com/en/) Website Analysis (Site Analyzer) (https://www.site-analyzer.com/) Website Analysis (StatsCrop) (http://www.statscrop.com/) Website Analysis (UITest.com) (http://uitest.com/en/check/) Website Blockade Check for China (http://www.blockedinchina.net/) Website Blockade Check for England (https://www.blocked.org.uk/) Website Browser and Location Speed Test (http://bit.ly/2cGeYrO) Design Diff (script) (https://percy.io/) Website Design History (DomainTools) (http://bit.ly/2cjC0mD) Website Design History (Screenshots.com) (https://www.screenshots.com/) Website Fingerprint Check (https://www.grc.com/fingerprints.htm) Website Grader (Website Grader) Website Monitoring Service (http://www.montastic.com/) Website Performance Analysis (GTmetrix) (https://gtmetrix.com/) Website Performance Analysis (IISpeed) (https://www.iispeed.com/pagespeed/insights) Website Performance Analysis (Page Performance; WebKit browser extension) http://bit.ly/2cqOoRk) Website Performance Analysis (PageSpeed) (http://bit.ly/2coEeD8) Website Performance Analysis (Pingdom) (https://tools.pingdom.com/fpt/) Website Performance Analysis (WebPagetest) (http://www.webpagetest.org/) Website Performance Analysis (YSlow; browser extension) (http://yslow.org/) Website Review (http://www.reviewmyweb.com/) Website Technology Analysis (http://builtwith.com/) Website Timer (http://www.octagate.com/service/SiteTimer/) XHTML 1.0 Schema Validator (http://schneegans.de/sv/) XML Schema Validator (http://bit.ly/2ctvqJZ) XML Validator (http://www.xmlvalidation.com/) XML Well-Formedness Check and Validator (http://bit.ly/2cTlfnh) Summary This was a brief treatise on the subject of website quality control What have we learned? Quality management consists of quality planning, quality control, quality assurance, and quality improvement, and it comes with a number of methods to identify (control), fix (improvement), and avoid defects (planning, assurance) Website quality control entails the means to determine (a) whether websites meet our own expectations and (b) to what degree our websites meet professional best practices Quality control is important because otherwise we would have no way of knowing whether what we and produce is any good Quality control is professional; quality control saves time and money and sometimes nerves Quality control entails and must include a great number of tests, covering security, accessibility, usability, performance, functionality, maintainability, semantics, validation, layout and design consistency, typography, (general) code quality, and coding standard compliance In practice, quality control requires training, depends on our mindsets, stands and falls with automation, and needs enforcement And, finally, there are a gazillion tools for quality control and assurance Quality management is important, and no website should go without a plan for quality control About the Author Jens Oliver Meiert is a German philosopher and developer Jens, who has written seven or so nonbestselling books about a variety of topics (the most recent being How to Work on Oneself), is currently deepening his philosophy studies at the Universität Hamburg He is an invited expert and working group member at the W3C and has been a technical lead at companies like Google and GMX Between coding and thinking, Jens has traveled the world (18 countries on continents in 2012, 48 countries on continents from 2013–2015) and run a number of art-political campaigns (the most recent being It’s Not Too Late) He loves good coffee, men’s fashion, and Werder Bremen Online, he lives at meiert.com Say hello ...O’Reilly Web Platform The Little Book of Website Quality Control Jens Oliver Meiert The Little Book of Website Quality Control by Jens Oliver Meiert Copyright © 2017... in the long run But what are our options to control the quality of our websites? We’ll look at that now in more detail The Great Website Quality Control Rundown When you think about the quality. .. stricter on the one end and more lenient on the other: Website quality control entails the means to determine (a) whether they meet our expectations and (b) to what degree our websites meet professional

Ngày đăng: 04/03/2019, 14:30

TỪ KHÓA LIÊN QUAN