WebPageTest API

Estoy dispuesto a apostar que conoce WebPageTest . Es la principal herramienta en la caja de herramientas de la gente de rendimiento web. Tal vez no sabías que WebPageTest fue un proyecto paralelo de un tipo, Patrick Meenan, durante la mayor parte de su vida, con bastidores literales de dispositivos reales que él mismo mantenía. Un logro sorprendente, sin duda, pero también me hace sentir bien que WebPageTest ahora sea propiedad de Catchpoint y que Patrick esté presente en el proyecto. Por un lado, el diseño de WebPageTest ahora es bastante bueno. Una mejora bienvenida, digamos.
Entonces sí, WebPageTest todavía está aquí. Sigue siendo gratis. Está ahí todo lo que siempre estuvo, pero más (como… Los datos de experiencia del usuario de Chrome se incluyen directamente en los resultados de las pruebas de Chrome para que pueda ver en qué medida su prueba coincide con lo que Chrome está viendo y las visualizaciones web principales directamente en la cascada). Es que ahora ya no es un proyecto paralelo, tiene el apoyo de una empresa totalmente centrada en ayudar a los desarrolladores.
Sin embargo, aquí está la verdadera noticia: ahora hay una API completamente escalable.
Entonces puedes ser como:
Me gustaría saber mi tiempo de interacción (TTI), Core Web Vitals (CWV) y tamaño total de las imágenes de la página de mi producto principal junto con una tira de película de carga desde un navegador Firefox en Canadá.
Y obtendrás exactamente eso de la API . Y mucho más. Todo lo que WebPageTest puede hacer está disponible en la API.
Esta no es una API adicional. Este es un producto completamente impulsado por API. Entonces, si WebPageTest evoluciona y ofrece más funcionalidad (y lo hará), la tendrá en la API. Una API preparada para perros es una API en la que puede confiar. Es muy probable que Catchpoint haga más con WebPageTest con el tiempo y estará impulsado por estas mismas API. Creo que es importante saberlo. Puede confiar mucho más en una API cuando la API impulsa el producto, en comparación con cuando una API se agrega a un producto.
Ejemplo de datos JSON de API
{ "data":{ "id":"210427_AiDcXW_8bd098a817944af61f7db97e4463e622", "url":"https://docs.webpagetest.org/", "summary":"https://www.webpagetest.org/results.php?test=210427_AiDcXW_8bd098a817944af61f7db97e4463e622", "testUrl":"https://docs.webpagetest.org/", "location":"ec2-us-east-1:Chrome", "from":"Virginia USA - EC2 - bChrome/b - bEmulated Motorola G (gen 4)/b - b4G/b", "connectivity":"4G", "bwDown":9000, "bwUp":9000, "latency":170, "plr":null, "shaperLimit":0, "mobile":1, "completed":1619530566, "testRuns":1, "fvonly":true, "successfulFVRuns":1, "average":{ "firstView":{ "loadTime":1805, "docTime":1805, "fullyLoaded":3453, "bytesOut":21486, "bytesOutDoc":9612, "bytesIn":96520, "bytesInDoc":92826, "requests":12, "requestsFull":12, "requestsDoc":6, "responses_200":12, "responses_404":0, "responses_other":0, "result":0, "testStartOffset":0, "cached":0, "optimization_checked":1, "start_epoch":0, "loadEventStart":1805, "loadEventEnd":1805, "domContentLoadedEventStart":876, "domContentLoadedEventEnd":876, "connections":5, "final_base_page_request":0, "firstPaint":865.0500000076, "firstContentfulPaint":865, "firstMeaningfulPaint":865, "domInteractive":875, "firstImagePaint":995, "TTFB":730, "basePageSSLTime":203, "score_cache":94, "score_cdn":100, "score_gzip":100, "score_cookies":-1, "score_keep-alive":100, "score_minify":-1, "score_combine":-1, "score_compress":100, "score_etags":-1, "score_progressive_jpeg":-1, "gzip_total":28624, "gzip_savings":0, "minify_total":-1, "minify_savings":-1, "image_total":67481, "image_savings":0, "cpu.UpdateLayerTree":11, "cpu.EventDispatch":1, "cpu.CommitLoad":0, "cpu.EvaluateScript":46, "cpu.v8.compile":4, "cpu.ParseHTML":37, "cpu.UpdateLayoutTree":5, "cpu.Layout":30, "cpu.ResourceChangePriority":0, "cpu.Paint":3, "cpu.largestContentfulPaint::Candidate":0, "cpu.MarkDOMContent":0, "cpu.FunctionCall":5, "cpu.HitTest":0, "cpu.MarkLoad":0, "cpu.XHRReadyStateChange":2, "cpu.XHRLoad":0, "cpu.Idle":3309, "date":1619530556.95751, "throttle_cpu_requested":3.5, "throttle_cpu":2.7715020391, "fullyLoadedCPUms":6859, "fullyLoadedCPUpct":57.6955424727, "domElements":103, "domComplete":1805, "PerformancePaintTiming.first-paint":865.0500000076, "PerformancePaintTiming.first-contentful-paint":865.0500000076, "test_run_time_ms":8968, "Colordepth":24, "lastVisualChange":1000, "visualComplete":1000, "render":900, "SpeedIndex":902, "visualComplete85":900, "visualComplete90":900, "visualComplete95":900, "visualComplete99":1000, "chromeUserTiming.navigationStart":0, "chromeUserTiming.fetchStart":2, "chromeUserTiming.responseEnd":735, "chromeUserTiming.unloadEventStart":737, "chromeUserTiming.unloadEventEnd":737, "chromeUserTiming.commitNavigationEnd":739, "chromeUserTiming.domLoading":740, "chromeUserTiming.firstMeaningfulPaint":865, "chromeUserTiming.firstMeaningfulPaintCandidate":865, "chromeUserTiming.firstContentfulPaint":865, "chromeUserTiming.firstPaint":865, "chromeUserTiming.domInteractive":874, "chromeUserTiming.domContentLoadedEventStart":875, "chromeUserTiming.domContentLoadedEventEnd":875, "chromeUserTiming.firstImagePaint":994, "chromeUserTiming.domComplete":1804, "chromeUserTiming.loadEventStart":1804, "chromeUserTiming.loadEventEnd":1804, "chromeUserTiming.LargestTextPaint":865, "chromeUserTiming.LargestContentfulPaint":865, "chromeUserTiming.LargestImagePaint":994, "chromeUserTiming.TotalLayoutShift":0, "chromeUserTiming.CumulativeLayoutShift":0, "maxFID":0, "TTIMeasurementEnd":3458, "LastInteractive":900, "TotalBlockingTime":0, "run":1, "step":1, "effectiveBps":35446, "effectiveBpsDoc":86349, "domTime":0, "aft":0, "titleTime":0, "domLoading":0, "server_rtt":0, "smallImageCount":4, "bigImageCount":0, "maybeCaptcha":0, "avgRun":1 } }, "standardDeviation":{ "firstView":{ "loadTime":0, "docTime":0, "fullyLoaded":0, "bytesOut":0, "bytesOutDoc":0, "bytesIn":0, "bytesInDoc":0, "requests":0, "requestsFull":0, "requestsDoc":0, "responses_200":0, "responses_404":0, "responses_other":0, "result":0, "testStartOffset":0, "cached":0, "optimization_checked":0, "start_epoch":0, "loadEventStart":0, "loadEventEnd":0, "domContentLoadedEventStart":0, "domContentLoadedEventEnd":0, "connections":0, "final_base_page_request":0, "firstPaint":0, "firstContentfulPaint":0, "firstMeaningfulPaint":0, "domInteractive":0, "firstImagePaint":0, "TTFB":0, "basePageSSLTime":0, "score_cache":0, "score_cdn":0, "score_gzip":0, "score_cookies":0, "score_keep-alive":0, "score_minify":0, "score_combine":0, "score_compress":0, "score_etags":0, "score_progressive_jpeg":0, "gzip_total":0, "gzip_savings":0, "minify_total":0, "minify_savings":0, "image_total":0, "image_savings":0, "cpu.UpdateLayerTree":0, "cpu.EventDispatch":0, "cpu.CommitLoad":0, "cpu.EvaluateScript":0, "cpu.v8.compile":0, "cpu.ParseHTML":0, "cpu.UpdateLayoutTree":0, "cpu.Layout":0, "cpu.ResourceChangePriority":0, "cpu.Paint":0, "cpu.largestContentfulPaint::Candidate":0, "cpu.MarkDOMContent":0, "cpu.FunctionCall":0, "cpu.HitTest":0, "cpu.MarkLoad":0, "cpu.XHRReadyStateChange":0, "cpu.XHRLoad":0, "cpu.Idle":0, "date":0, "throttle_cpu_requested":0, "throttle_cpu":0, "fullyLoadedCPUms":0, "fullyLoadedCPUpct":0, "domElements":0, "domComplete":0, "PerformancePaintTiming.first-paint":0, "PerformancePaintTiming.first-contentful-paint":0, "test_run_time_ms":0, "Colordepth":0, "lastVisualChange":0, "visualComplete":0, "render":0, "SpeedIndex":0, "visualComplete85":0, "visualComplete90":0, "visualComplete95":0, "visualComplete99":0, "chromeUserTiming.navigationStart":0, "chromeUserTiming.fetchStart":0, "chromeUserTiming.responseEnd":0, "chromeUserTiming.unloadEventStart":0, "chromeUserTiming.unloadEventEnd":0, "chromeUserTiming.commitNavigationEnd":0, "chromeUserTiming.domLoading":0, "chromeUserTiming.firstMeaningfulPaint":0, "chromeUserTiming.firstMeaningfulPaintCandidate":0, "chromeUserTiming.firstContentfulPaint":0, "chromeUserTiming.firstPaint":0, "chromeUserTiming.domInteractive":0, "chromeUserTiming.domContentLoadedEventStart":0, "chromeUserTiming.domContentLoadedEventEnd":0, "chromeUserTiming.firstImagePaint":0, "chromeUserTiming.domComplete":0, "chromeUserTiming.loadEventStart":0, "chromeUserTiming.loadEventEnd":0, "chromeUserTiming.LargestTextPaint":0, "chromeUserTiming.LargestContentfulPaint":0, "chromeUserTiming.LargestImagePaint":0, "chromeUserTiming.TotalLayoutShift":0, "chromeUserTiming.CumulativeLayoutShift":0, "maxFID":0, "TTIMeasurementEnd":0, "LastInteractive":0, "TotalBlockingTime":0, "run":0, "step":0, "effectiveBps":0, "effectiveBpsDoc":0, "domTime":0, "aft":0, "titleTime":0, "domLoading":0, "server_rtt":0, "smallImageCount":0, "bigImageCount":0, "maybeCaptcha":0, "avgRun":null } }, "median":{ "firstView":{ "numSteps":1, "run":1, "tester":"i-0247aadaa23ac9fec", "loadTime":1805, "docTime":1805, "fullyLoaded":3453, "bytesOut":21486, "bytesOutDoc":9612, "bytesIn":96520, "bytesInDoc":92826, "requests":[ { "type":3, "id":"8F26376CBD35F32E850C9DBEC39882D4", "request_id":"8F26376CBD35F32E850C9DBEC39882D4", "ip_addr":"52.203.36.44", "full_url":"https://docs.webpagetest.org/", "is_secure":1, "method":"GET", "host":"docs.webpagetest.org", "url":"/", "raw_id":"8F26376CBD35F32E850C9DBEC39882D4", "frame_id":"E57BDA2151E08AC948685BFE69680D5E", "documentURL":"https://docs.webpagetest.org/", "responseCode":200, "request_type":"Document", "load_ms":178, "ttfb_ms":173, "load_start":557, "load_start_float":556.647, "bytesIn":5465, "objectSize":5465, "objectSizeUncompressed":22360, "chunks":[ { "ts":734.825, "bytes":5465 } ], "expires":"", "cacheControl":"max-age=900,must-revalidate", "contentType":"text/html", "contentEncoding":"br", "socket":42, "protocol":"HTTP/2", "dns_start":4, "dns_end":182, "connect_start":182, "connect_end":353, "ssl_start":353, "ssl_end":556, "securityDetails":{ "protocol":"TLS 1.3", "keyExchange":"", "keyExchangeGroup":"X25519", "cipher":"AES_256_GCM", "certificateId":0, "subjectName":"docs.webpagetest.org", "sanList":[ "docs.webpagetest.org" ], "issuer":"R3", "validFrom":1619467227, "validTo":1627243227, "signedCertificateTimestampList":[ { "status":"Verified", "origin":"Embedded in certificate", "logDescription":"Sectigo 'Mammoth' CT log", "logId":"6F5376AC31F03119D89900A45115FF77151C11D902C10029068DB2089A37D913", "timestamp":1619470827302, "hashAlgorithm":"SHA-256", "signatureAlgorithm":"ECDSA", "signatureData":"3046022100A2BCD9F63B5797CB092A1186C47BBA07159B64A547AB70F712A2365232D80C29022100D0F30E54E297A03A68369920C0D941D7A0FF3840478D681039FC4156BF21BA81" }, { "status":"Verified", "origin":"Embedded in certificate", "logDescription":"Google 'Xenon2021' log", "logId":"7D3EF2F88FFF88556824C2C0CA9E5289792BC50E78097F2E6A9768997E22F0D7", "timestamp":1619470827299, "hashAlgorithm":"SHA-256", "signatureAlgorithm":"ECDSA", "signatureData":"3045022069E20E80E8FBAF20B7DE722D0104F91084379684D20200DD621EAD7A7254C0930221008C377DFEC43CB8395661CEC67259D1F8A955D5046D5B96191CAC7569DFEC0D83" } ], "certificateTransparencyCompliance":"compliant" }, "initiator":"", "initiator_line":"", "initiator_column":"", "initiator_type":"script", "priority":"HIGHEST", "initial_priority":"VeryHigh", "server_rtt":null, "headers":{ "request":[ ":method: GET", ":authority: docs.webpagetest.org", ":scheme: https", ":path: /", "upgrade-insecure-requests: 1", "user-agent: Mozilla/5.0 (Linux; Android 6.0.1; Moto G (4)) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.85 Mobile Safari/537.36 PTST/210419.211328", "accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9", "sec-fetch-site: cross-site", "sec-fetch-mode: navigate", "sec-fetch-dest: document", "accept-encoding: gzip, deflate, br", "accept-language: en-US,en;q=0.9" ], "response":[ "content-type: text/html; charset=UTF-8", "date: Tue, 27 Apr 2021 11:58:35 GMT", "etag: "50dfb5ef4ccf18da5e07c09a798f25c4-ssl-df""""No related posts.
Deja un comentario